* @copyright OPEN CASCADE 2012
*/
-import java.io.IOException;
import java.util.Calendar;
import java.util.Collections;
import java.util.Date;
import java.util.HashSet;
import java.util.Vector;
-import org.hibernate.HibernateException;
-import org.hibernate.Session;
-import org.hibernate.Transaction;
import org.splat.dal.bo.kernel.Persistent;
import org.splat.dal.bo.kernel.User;
import org.splat.dal.dao.som.Database;
import org.splat.kernel.InvalidPropertyException;
import org.splat.kernel.MissedPropertyException;
import org.splat.kernel.MultiplyDefinedException;
-import org.splat.service.StepService;
-import org.splat.service.technical.IndexService;
import org.splat.som.Step;
private Study owner;
private int sid; // Identifier unique in the scope of owner study
private User cuser; // User having checked-out the scenario, if done
+ /**
+ * The persistent set of scenario knowledge elements.
+ */
private Set<KnowledgeElement> kelms;
// Transient fields
- private HashMap<Long, List<KnowledgeElement>> known;
- private List<KnowledgeElement> knowl; // Copy of kelms excluding the internal Knowledge Element (ucase below)
- private KnowledgeElement ucase; // Internal Knowledge Element for accessing to all used simulation contexts
+ /**
+ * The transient map of knowledge elements grouped by types.
+ */
+ transient private HashMap<Long, List<KnowledgeElement>> known;
+ /**
+ * The scenario transient list of knowledge elements.
+ */
+ transient private List<KnowledgeElement> knowl; // Copy of kelms excluding the internal Knowledge Element (ucase below)
+ /**
+ * The scenario transient "use case" knowledge element.
+ */
+ transient private KnowledgeElement ucase; // Internal Knowledge Element for accessing to all used simulation contexts
// ==============================================================================================================================
// Construction
// ==============================================================================================================================
-// Fields initialization class
+
+ /**
+ * Fields initialization class.
+ */
public static class Properties extends Persistent.Properties {
// ------------------------------------------------------------
private Study owner = null;
kelms = new HashSet<KnowledgeElement>();
manager = sprop.manager;
- if (!owner.isStaffedBy(manager)) throw new InvalidPropertyException("manager");
+//RKV: The business logic is moved to business services: if (!owner.isStaffedBy(manager)) throw new InvalidPropertyException("manager");
credate = sprop.date; // Inherited attribute
if (credate == null) {
// Private services
// ==============================================================================================================================
/**
- * @return
+ * Get the persistent set of knowledge elements.
+ * @return the persistent set of scenario knowledge elements
*/
public Set<KnowledgeElement> getKnowledgeElements() {
return kelms;
}
- /**
- * @param kelm
+ /**
+ * Get the transient list of knowledge elements.
+ * @return the transient list of knowledge elements
*/
- public void setUcase(KnowledgeElement kelm) {
- ucase = kelm;
+ public List<KnowledgeElement> getKnowledgeElementsList() {
+ return knowl;
}
/**
- * @return
+ * Set the scenario transient "use case" knowledge element.
+ * @param kelm the scenario transient "use case" knowledge element
*/
- public List<KnowledgeElement> getKnowledgeElementsList() {
- return knowl;
+ public void setUcase(KnowledgeElement kelm) {
+ ucase = kelm;
}
/**
- * Get the ucase.
- * @return the ucase
+ * Get the scenario transient "use case" knowledge element.
+ * @return the scenario transient "use case" knowledge element
*/
public KnowledgeElement getUcase() {
return ucase;