package roboticshours;

import java.util.ArrayList;

/**
 *
 * @author Alan
 */
public class Account {

    private static int numberOfAccounts; //UNNECESSARY: TODO REMOVE
    private final int ID; //Primary key?
    private String name; //TODO FIRST AND LAST NAME
    private final ArrayList<Entry> entryList;

    /**
     * Creates a new account.
     * @param n the user's name
     */
    public Account(String n) { //Constructor A: Users should use this constructor.
        ID = numberOfAccounts;
        name = n;
        entryList = new ArrayList<>();
        numberOfAccounts++;
    }

    /**
     * Creates a new account and specifies the ID number to be used.
     * @param i custom ID number
     * @param n the user's name
     */
    public Account(int i, String n) { //Constructor B: This constructor should only be used by the program.
        ID = i;
        name = n;
        entryList = new ArrayList<>();
        numberOfAccounts++;
    }

    /**
     * @return  the user's name
     */
    public String getAccountName() {
        return name;
    }

    /**
     * @param n the new account name
     */
    public void changeAccountName(String n) {
        name = n;
    }

    /**
     * @return  the account ID
     */
    public int getAccountID() {
        return ID;
    }

    /**
     * Adds an <code>Entry</code> object to the internal <code>ArrayList</code> within the <code>Account</code>.
     * @param e the <code>Entry</code> to be added
     */
    public void addEntry(Entry e) {
        entryList.add(e);
    }

    /**
     *
     * @param e
     */
    public void deleteEntry(Entry e) {
        entryList.remove(e);
    }

    /**
     *
     * @return
     */
    public ArrayList<Entry> getEntries() {
        return entryList;
    }

    /**
     *  Clears all the entries in entryList.
     */
    public void clearEntries() {
        entryList.clear();
    }
    
    /**
     *  Increases the current counter for account IDs.
     */
    public static void incrementNumberOfAccounts(){
        numberOfAccounts++;
    }
}

@@ -52,17 +52,166 @@
 %0A%0A/**%0A *
+ A class to organize hour entries.%0A * This class contains an ID, name, and %3Ccode%3EentryList%3C/code%3E,%0A * an %7B@link ArrayList%7D used to store entries.%0A * 
 %0A
-
  * @auth
@@ -406,16 +406,83 @@
 AST NAME
+. Possibly concatenate users' names into one string without spaces.
 %0A    pri
@@ -557,17 +557,16 @@
  account
-.
 %0A     * 
@@ -879,17 +879,16 @@
  be used
-.
 %0A     * 
@@ -1630,17 +1630,16 @@
 t%3C/code%3E
-.
 %0A     * 
@@ -1773,23 +1773,16 @@
 *%0A     *
-%0A     *
  @param 
@@ -1782,16 +1782,85 @@
 @param e
+ the %3Ccode%3EEntry%3C/code%3E to be removed from the %3Ccode%3EentryList%3C/code%3E
 %0A     */
@@ -1949,31 +1949,24 @@
 *%0A     *
-%0A     *
  @return
 %0A     */
@@ -1957,16 +1957,55 @@
  @return
+  the %3Ccode%3EArrayList%3C/code%3E of entries
 %0A     */
@@ -2123,16 +2123,22 @@
 ries in 
+%3Ccode%3E
 entryLis
@@ -2138,16 +2138,23 @@
 ntryList
+%3C/code%3E
 .%0A     *
@@ -2226,32 +2226,32 @@
  %7D%0A    %0A    /**%0A
-
      *  Increase
@@ -2289,16 +2289,75 @@
 nt IDs.%0A
+     *  This will most likely be removed in a new version.%0A
      */%0A

Update Javadoc and documentation for Account class