User Tools

Site Tools


struktura:marklar-core:entitydomain

Entity Domain

Entity Domain je definice jednotlivych entit puzivanych k persistovani/nacitani objektu pres Hibernate do MySQL DB. Objektove jsou vsechny entity dedeny od PersistenceObject (s vlastnostmi id, created, lastupdated) a metodami

@Override
public boolean equals(final Object obj);
public void save();
public void delete();
+ getters, setters

Entity dedici od teto tridy maji nasledujici datovou struktutu (vynechavam vlastnosti jiz uvedene u PersistenceObject).

ExperimentInstance

Nejkomplexnejsi entitou je ExperimentInstance. Byly vytvoreny tridy specialne pro usnadneni prace s ExperimentInstance.

ExperimentStatus nabyva nasledujicich hodnot

public enum ExperimentStatus {
  NEW, NEW_LOCKED, RUNNING, CRASHED, PAUSED, SUSPENDED, ABORTED, ENDED
}

a je pro nej vytvorena specialni trida ExperimentStatusHelper s metodami

public static Color toColor(ExperimentStatus status);
public static String toString(ExperimentStatus status);

Tridou, ktera pomaha s nacitanim dat (at uz ExperimentInstanceTimedData nebo ExperimentInstanceSingleData) je trida ExperimentInstanceDataService. V kazde aplikaci by mela byt trida, ktera od teto inherituje. Obsahuje metody v nasledujicim formatu

// ulozeni ExperimentInstanceTimedData
public void addTimedDoubleValue(double value, String name, long time);
// nacteni ExperimentInstanceTimedData
public List<ExperimentInstanceTimedData> getTimedData(String name);
 
// ulozeni ExperimentInstanceSingleData
public void saveFinalDoubleValue(double value, String name);
// nacteni ExperimentInstanceSingleData
protected double loadSingleDoubleValue(String name);

GenericSetting

Na prvni pohled upouta pozornost GenericSetting, ktery se nijak nevaze k jinym entitam. Vazba je vytvorena pres objectID a settingType. settingType rekne, o jaky typ entity se jedna, objectID pak urcuje jiz konkretni objekt.

public enum SettingEnum {
  INSTRUMENT, EXP_INSTANCE, EXP_TYPE
}
struktura/marklar-core/entitydomain.txt · Last modified: 2016/07/20 09:55 by jlochman