Search in sources :

Example 41 with Schema

use of org.openforis.idm.metamodel.Schema in project collect by openforis.

the class StateDependencyMap method registerDependencies.

private void registerDependencies(Survey survey) {
    Schema schema = survey.getSchema();
    List<EntityDefinition> rootEntityDefinitions = schema.getRootEntityDefinitions();
    for (EntityDefinition entityDefinition : rootEntityDefinitions) {
        registerDependencies(entityDefinition);
    }
}
Also used : EntityDefinition(org.openforis.idm.metamodel.EntityDefinition) Schema(org.openforis.idm.metamodel.Schema)

Example 42 with Schema

use of org.openforis.idm.metamodel.Schema in project collect by openforis.

the class DataHandler method getNodeDefinition.

private NodeDefinition getNodeDefinition(Entity parentEntity, String localName, Attributes attributes) {
    NodeDefinition newDefn = null;
    EntityDefinition parentEntityDefn = parentEntity.getDefinition();
    Schema originalSchema = recordSurvey.getSchema();
    EntityDefinition originlParentEntityDefn = (EntityDefinition) originalSchema.getDefinitionById(parentEntityDefn.getId());
    NodeDefinition originalDefn = originlParentEntityDefn.getChildDefinition(localName);
    if (originalDefn != null) {
        Schema newSchema = currentSurvey.getSchema();
        newDefn = newSchema.getDefinitionById(originalDefn.getId());
    }
    return newDefn;
}
Also used : EntityDefinition(org.openforis.idm.metamodel.EntityDefinition) Schema(org.openforis.idm.metamodel.Schema) NodeDefinition(org.openforis.idm.metamodel.NodeDefinition)

Example 43 with Schema

use of org.openforis.idm.metamodel.Schema in project collect by openforis.

the class SchemaVM method createEntityDefinition.

protected EntityDefinition createEntityDefinition() {
    Schema schema = survey.getSchema();
    EntityDefinition newNode = schema.createEntityDefinition();
    return newNode;
}
Also used : EntityDefinition(org.openforis.idm.metamodel.EntityDefinition) Schema(org.openforis.idm.metamodel.Schema)

Example 44 with Schema

use of org.openforis.idm.metamodel.Schema in project collect by openforis.

the class SchemaVM method moveNode.

protected void moveNode(int newIndexInTree) {
    SurveyObject surveyObject = selectedTreeNode.getSurveyObject();
    List<SurveyObject> siblings = getSiblingsInTree(surveyObject);
    SurveyObject newIndexItem = siblings.get(newIndexInTree);
    SchemaTreeNode newIndexNode = treeModel.getTreeNode(newIndexItem);
    int newIndexInModel = newIndexNode.getIndexInModel();
    if (surveyObject instanceof NodeDefinition) {
        NodeDefinition nodeDefn = (NodeDefinition) surveyObject;
        EntityDefinition parentEntity = nodeDefn.getParentEntityDefinition();
        if (parentEntity != null) {
            parentEntity.moveChildDefinition(nodeDefn, newIndexInModel);
        } else {
            EntityDefinition rootEntity = nodeDefn.getRootEntity();
            Schema schema = rootEntity.getSchema();
            schema.moveRootEntityDefinition(rootEntity, newIndexInModel);
        }
    } else {
        UITab tab = (UITab) surveyObject;
        UITabSet parent = tab.getParent();
        parent.moveTab(tab, newIndexInModel);
    }
    treeModel.moveSelectedNode(newIndexInTree);
    notifyChange("treeModel", "moveNodeUpDisabled", "moveNodeDownDisabled");
    dispatchSurveyChangedCommand();
}
Also used : EntityDefinition(org.openforis.idm.metamodel.EntityDefinition) UITab(org.openforis.collect.metamodel.ui.UITab) SchemaTreeNode(org.openforis.collect.designer.component.SchemaTreeModel.SchemaTreeNode) SurveyObject(org.openforis.idm.metamodel.SurveyObject) Schema(org.openforis.idm.metamodel.Schema) UITabSet(org.openforis.collect.metamodel.ui.UITabSet) NodeDefinition(org.openforis.idm.metamodel.NodeDefinition)

Example 45 with Schema

use of org.openforis.idm.metamodel.Schema in project collect by openforis.

the class NewSurveyParametersPopUpVM method createEmptySurvey.

protected CollectSurvey createEmptySurvey(String name, String langCode) {
    // create empty survey
    CollectSurvey survey = surveyManager.createTemporarySurvey(name, langCode);
    // add default root entity
    Schema schema = survey.getSchema();
    EntityDefinition rootEntity = schema.createEntityDefinition();
    rootEntity.setMultiple(true);
    rootEntity.setName(SurveyController.DEFAULT_ROOT_ENTITY_NAME);
    schema.addRootEntityDefinition(rootEntity);
    // create root tab set
    UIOptions uiOptions = survey.getUIOptions();
    UITabSet rootTabSet = uiOptions.createRootTabSet((EntityDefinition) rootEntity);
    UITab mainTab = uiOptions.getMainTab(rootTabSet);
    mainTab.setLabel(langCode, SurveyController.DEFAULT_MAIN_TAB_LABEL);
    SurveyObjectsGenerator surveyObjectsGenerator = new SurveyObjectsGenerator();
    surveyObjectsGenerator.addPredefinedObjects(survey);
    return survey;
}
Also used : EntityDefinition(org.openforis.idm.metamodel.EntityDefinition) UITab(org.openforis.collect.metamodel.ui.UITab) Schema(org.openforis.idm.metamodel.Schema) UIOptions(org.openforis.collect.metamodel.ui.UIOptions) UITabSet(org.openforis.collect.metamodel.ui.UITabSet) SurveyObjectsGenerator(org.openforis.collect.manager.SurveyObjectsGenerator) CollectSurvey(org.openforis.collect.model.CollectSurvey)

Aggregations

Schema (org.openforis.idm.metamodel.Schema)65 EntityDefinition (org.openforis.idm.metamodel.EntityDefinition)46 NodeDefinition (org.openforis.idm.metamodel.NodeDefinition)23 CollectSurvey (org.openforis.collect.model.CollectSurvey)19 ArrayList (java.util.ArrayList)10 AttributeDefinition (org.openforis.idm.metamodel.AttributeDefinition)10 Survey (org.openforis.idm.metamodel.Survey)10 CodeAttributeDefinition (org.openforis.idm.metamodel.CodeAttributeDefinition)6 UIOptions (org.openforis.collect.metamodel.ui.UIOptions)5 NumericAttributeDefinition (org.openforis.idm.metamodel.NumericAttributeDefinition)5 Test (org.junit.Test)4 UITab (org.openforis.collect.metamodel.ui.UITab)4 UITabSet (org.openforis.collect.metamodel.ui.UITabSet)4 Step (org.openforis.collect.model.CollectRecord.Step)4 CollectRecordSummary (org.openforis.collect.model.CollectRecordSummary)4 RecordFilter (org.openforis.collect.model.RecordFilter)4 NodeDefinitionVisitor (org.openforis.idm.metamodel.NodeDefinitionVisitor)4 NumberAttributeDefinition (org.openforis.idm.metamodel.NumberAttributeDefinition)4 Entity (org.openforis.idm.model.Entity)4 List (java.util.List)3