Dienstag, 12. April 2011

 

Refactoring Data - Interface Record (PR: 5A, 5B)

Um einfacher automatisch testen zu können, soll das Interface Record (anstatt einer Klasse Record) bei der Datenklasse Data verwendet werden.
package data;

/**
 * RuD-Übung 2011
 *
 * data.Record.java
 * @author (c) 2011, Harald R. Haberstroh
 * 1.3.2011
 */

import java.rmi.Remote;
import java.rmi.RemoteException;

/**
 * @author Harald R. Haberstroh (hh)
 * 
 */
public interface Record extends Remote {
    /**
     * @return Anzahl der Felder dieses Datensatzes z.B. 8
     */
    public int getCntFields() throws RemoteException;

    /**
     * @return liefert alle Felder verkettet in einen String mit ';' getrennt
     *         z.B.
     *         "12;49.82012,17.260019;47.81497,16.260409;523;201102131510;67;2345121269;O"
     *         Strings sind unter Hochkomma zu setzen. z.B.
     *         "\"wlr1\";\"Werk Laderoboter 1\";\"   50\";\"   50\""
     */
    public String getCsvString() throws RemoteException;

    /**
     * Setzt die Felder auf die gegebenen Strings. Gegebenenfalls sind die
     * Strings abzuschneiden. Die Anzahl der Strings stimmt beim Aufruf von
     * setFields() auf alle Fälle mit getCntFields() überein (Prüfung braucht
     * nicht zu erfolgen).
     * 
     * @param fields
     *            Array mit den Feldwerten.
     * @throws RemoteException
     */
    public void setFields(String[] fields) throws RemoteException;
}
Damit kann per JUnit-Test ganz einfach der Inhalt eines Datensatzes und die Anzahl der Felder geprüft werden.
Überdies wird hier Refactoring geübt, da das Programm (die Klassen) entsprechend angepasst werden müssen (Ihre Record-Klasse muss umbenannt werden und eben das gegebene Interface implementieren).

Labels: , ,


Kommentare:

Kommentar veröffentlichen

Abonnieren Kommentare zum Post [Atom]





<< Startseite

This page is powered by Blogger. Isn't yours?

Abonnieren Posts [Atom]