| 
						 | 
					@ -4,7 +4,14 @@ package ch.zhaw.projekt2.turnierverwaltung;
 | 
				
			||||||
import javafx.collections.FXCollections;
 | 
					import javafx.collections.FXCollections;
 | 
				
			||||||
import javafx.collections.ObservableList;
 | 
					import javafx.collections.ObservableList;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import java.io.*;
 | 
					
 | 
				
			||||||
 | 
					import java.io.File;
 | 
				
			||||||
 | 
					import java.io.FileInputStream;
 | 
				
			||||||
 | 
					import java.io.FileNotFoundException;
 | 
				
			||||||
 | 
					import java.io.FileOutputStream;
 | 
				
			||||||
 | 
					import java.io.IOException;
 | 
				
			||||||
 | 
					import java.io.ObjectInputStream;
 | 
				
			||||||
 | 
					import java.io.ObjectOutputStream;
 | 
				
			||||||
import java.net.URI;
 | 
					import java.net.URI;
 | 
				
			||||||
import java.util.logging.Logger;
 | 
					import java.util.logging.Logger;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -12,8 +19,8 @@ import java.util.logging.Logger;
 | 
				
			||||||
 * Class in Charge of Reading and Writing files
 | 
					 * Class in Charge of Reading and Writing files
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
public class FileIO {
 | 
					public class FileIO {
 | 
				
			||||||
    private File mainDir;
 | 
					    private final File mainDir;
 | 
				
			||||||
    private File saves;
 | 
					    private final File saves;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    private static final Logger logger = Logger.getLogger(FileIO.class.getCanonicalName());
 | 
					    private static final Logger logger = Logger.getLogger(FileIO.class.getCanonicalName());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -57,13 +64,14 @@ public class FileIO {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Method to check if a tournament with the existing name already exists.
 | 
					     * Method to check if a tournament with the existing name already exists.
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
     * @param name that is being checked
 | 
					     * @param name that is being checked
 | 
				
			||||||
     * @return true if the name exists already false if the name is unique
 | 
					     * @return true if the name exists already false if the name is unique
 | 
				
			||||||
     */
 | 
					     */
 | 
				
			||||||
    public boolean tournamentExists(String name) {
 | 
					    public boolean tournamentExists(String name) {
 | 
				
			||||||
        logger.finer("checking for duplicate name in tournament List");
 | 
					        logger.finer("checking for duplicate name in tournament List");
 | 
				
			||||||
        for (TournamentFile file : getList()) {
 | 
					        for (TournamentFile file : getList()) {
 | 
				
			||||||
            if (file.toString().toLowerCase().equals(name.toLowerCase())) {
 | 
					            if (file.toString().equalsIgnoreCase(name)) {
 | 
				
			||||||
                logger.fine(name + " is an already existing name in the list");
 | 
					                logger.fine(name + " is an already existing name in the list");
 | 
				
			||||||
                return true;
 | 
					                return true;
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
| 
						 | 
					@ -73,10 +81,10 @@ public class FileIO {
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Loads and returns a tournament from a given File which contains the serialiazed tournament.
 | 
					     * Loads and returns a tournament from a given File which contains the serialized tournament.
 | 
				
			||||||
     *
 | 
					     *
 | 
				
			||||||
     * @param tournamentFile The tournament file where the data should be read from.
 | 
					     * @param tournamentFile The tournament file where the data should be read from.
 | 
				
			||||||
     * @return Tournament that is returned when succefully being read from the file
 | 
					     * @return Tournament that is returned when successfully being read from the file
 | 
				
			||||||
     * @throws ClassNotFoundException No definition for the class with the specified name could be found
 | 
					     * @throws ClassNotFoundException No definition for the class with the specified name could be found
 | 
				
			||||||
     * @throws IOException            File not readable
 | 
					     * @throws IOException            File not readable
 | 
				
			||||||
     * @throws FileNotFoundException  File not found
 | 
					     * @throws FileNotFoundException  File not found
 | 
				
			||||||
| 
						 | 
					@ -119,7 +127,7 @@ public class FileIO {
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Serializables and saves the receiving tournament file to a txt file.
 | 
					     * Serializable and saves the receiving tournament file to a txt file.
 | 
				
			||||||
     *
 | 
					     *
 | 
				
			||||||
     * @param tournament the receiving tournament.
 | 
					     * @param tournament the receiving tournament.
 | 
				
			||||||
     * @throws IOException           File not readable
 | 
					     * @throws IOException           File not readable
 | 
				
			||||||
| 
						 | 
					@ -181,14 +189,14 @@ public class FileIO {
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * TournamentFile Class is in use to add missing functionality that is
 | 
					     * TournamentFile Class is in used to add missing functionality that is
 | 
				
			||||||
     */
 | 
					     */
 | 
				
			||||||
    public class TournamentFile extends File {
 | 
					    public static class TournamentFile extends File {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        /**
 | 
					        /**
 | 
				
			||||||
         * Only job the constructor got is to initialize it via its superclass. See java.io.File Documentation for more info.
 | 
					         * Only job the constructor got is to initialize it via its superclass. See java.io.File Documentation for more info.
 | 
				
			||||||
         *
 | 
					         *
 | 
				
			||||||
         * @param uri abstract pathname needed for its superclass to intialize the file accordingly.
 | 
					         * @param uri abstract pathname needed for its superclass to initialize the file accordingly.
 | 
				
			||||||
         */
 | 
					         */
 | 
				
			||||||
        public TournamentFile(URI uri) {
 | 
					        public TournamentFile(URI uri) {
 | 
				
			||||||
            super(uri);
 | 
					            super(uri);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,10 +1,15 @@
 | 
				
			||||||
package ch.zhaw.projekt2.turnierverwaltung;
 | 
					package ch.zhaw.projekt2.turnierverwaltung;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Invalid NameException is used to indicate when a given name does not follow the correct formatting.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
public class InvalidNameException extends Exception {
 | 
					public class InvalidNameException extends Exception {
 | 
				
			||||||
    public InvalidNameException() {
 | 
					    /**
 | 
				
			||||||
        super();
 | 
					     * Constructor to throw the InvalidNameException, receives a String as input to define reason for throwing
 | 
				
			||||||
    }
 | 
					     * the error.
 | 
				
			||||||
 | 
					     *
 | 
				
			||||||
 | 
					     * @param errorMessage to be displayed with the exception
 | 
				
			||||||
 | 
					     */
 | 
				
			||||||
    public InvalidNameException(String errorMessage) {
 | 
					    public InvalidNameException(String errorMessage) {
 | 
				
			||||||
        super(errorMessage);
 | 
					        super(errorMessage);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,18 +2,17 @@ package ch.zhaw.projekt2.turnierverwaltung;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * Most basic interface for observing an object
 | 
					 * Most basic interface for observing an object
 | 
				
			||||||
 * @author bles
 | 
					 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 | 
					 * @author bles
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
public interface IsObservable {
 | 
					public interface IsObservable {
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Add an observer that listens for updates
 | 
					     * Add an observer that listens for updates
 | 
				
			||||||
     * @param observer
 | 
					 | 
				
			||||||
     */
 | 
					     */
 | 
				
			||||||
    void addListener(IsObserver observer);
 | 
					    void addListener(IsObserver observer);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * Remove an observer from the list
 | 
					     * Remove an observer from the list
 | 
				
			||||||
     * @param observer
 | 
					 | 
				
			||||||
     */
 | 
					     */
 | 
				
			||||||
    void removeListener(IsObserver observer);
 | 
					    void removeListener(IsObserver observer);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,11 +1,12 @@
 | 
				
			||||||
package ch.zhaw.projekt2.turnierverwaltung;
 | 
					package ch.zhaw.projekt2.turnierverwaltung;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * Most basic interface for beeing an observer
 | 
					 * Most basic interface for being an observer
 | 
				
			||||||
 * @author bles
 | 
					 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
 | 
					 * @author bles
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
public interface IsObserver {
 | 
					public interface IsObserver {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * This method is always called when an observed object
 | 
					     * This method is always called when an observed object
 | 
				
			||||||
     * changes
 | 
					     * changes
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue