Package org.dmlite.model.config

Examples of org.dmlite.model.config.PropertyConfig


      if (entity.getConceptConfig() != null) {
        PropertiesConfig propertiesConfig = entity.getConceptConfig()
            .getPropertiesConfig();
        TextHandler textHandler = new TextHandler();
        for (IEntity config : propertiesConfig) {
          PropertyConfig propertyConfig = (PropertyConfig) config;
          String propertyCode = propertyConfig.getCode();
          if (propertyCode.equals("code")) {
            continue;
          }
          String cPropertyCode = textHandler
              .firstLetterToUpper(propertyCode);
View Full Code Here


              .getNeighborDestinationConceptConfig();
          if (parentConceptConfig != null) {
            PropertiesConfig parentConceptPropertiesConfig = parentConceptConfig
                .getPropertiesConfig();
            for (IEntity parentPropertyConfigEntity : parentConceptPropertiesConfig) {
              PropertyConfig parentConceptPropertyConfig = (PropertyConfig) parentPropertyConfigEntity;
              if (parentConceptPropertyConfig.isEssential()) {
                IEntity parentEntity = entity
                    .getNeighborEntity(neighborConfig
                        .getCode());
                Panel parentPropertyPanel;
                if (parentEntity != null) {
                  parentModelContext.setEntity(parentEntity);
                  parentModelContext
                      .setPropertyConfig(parentConceptPropertyConfig);
                  parentViewContext.setWicketId("valuePanel");
                  parentViewContext.getMoreArgs().add(
                      "shortText", Boolean.TRUE);
                  if (parentConceptPropertyConfig
                      .getPropertyClass().equals(
                          "java.net.URL")
                      || parentConceptPropertyConfig
                          .getPropertyClass()
                          .equals(
                              "org.dmlite.type.email.Email")) {
                    parentPropertyPanel = new ExternalLinkPanel(
                        parentModelContext,
                        parentViewContext);
                  } else if (parentConceptPropertyConfig
                      .getPropertyClass().equals(
                          "java.lang.String")
                      && parentConceptPropertyConfig
                          .isValidateType()
                      && (parentConceptPropertyConfig
                          .getValidationType()
                          .equals("java.net.URL") || parentConceptPropertyConfig
                          .getValidationType()
                          .equals(
                              "org.dmlite.type.email.Email"))) {
                    parentPropertyPanel = new ExternalLinkPanel(
                        parentModelContext,
                        parentViewContext);
                  } else {
                    parentPropertyPanel = new LabelPanel(
                        parentModelContext,
                        parentViewContext);
                  } // if
                  if (!app.isNeighborDisplayAllowed(
                      getAppSession(), neighborConfig)) {
                    parentPropertyPanel.setVisible(false);
                  } else if (!app.isPropertyDisplayAllowed(
                      getAppSession(),
                      parentConceptPropertyConfig)) {
                    parentPropertyPanel.setVisible(false);
                  }
                } else {
                  parentPropertyPanel = new Panel(
                      "valuePanel");
                  parentPropertyPanel.setVisible(false);
                }
                propertyValuePanels.add(parentPropertyPanel);
              } // if
            } // for
          } // if
        } // if
      } // for

      PropertiesConfig propertiesConfig = conceptConfig
          .getPropertiesConfig();
      for (IEntity propertyConfigEntity : propertiesConfig) {
        PropertyConfig propertyConfig = (PropertyConfig) propertyConfigEntity;
        if (propertyConfig.isEssential()) {
          entityModelContext.setPropertyConfig(propertyConfig);
          ViewContext propertiesViewContext = new ViewContext(
              viewContext);
          propertiesViewContext.setWicketId("valuePanel");
          propertiesViewContext.getMoreArgs().add("shortText",
              Boolean.TRUE);
          Panel essentialPropertyPanel;
          if (propertyConfig.getPropertyClass()
              .equals("java.net.URL")
              || propertyConfig.getPropertyClass().equals(
                  "org.dmlite.type.email.Email")) {
            essentialPropertyPanel = new ExternalLinkPanel(
                entityModelContext, propertiesViewContext);
          } else if (propertyConfig.getPropertyClass().equals(
              "java.lang.String")
              && propertyConfig.isValidateType()
              && (propertyConfig.getValidationType().equals(
                  "java.net.URL") || propertyConfig
                  .getValidationType().equals(
                      "org.dmlite.type.email.Email"))) {
            essentialPropertyPanel = new ExternalLinkPanel(
                entityModelContext, propertiesViewContext);
          } else {
View Full Code Here

          linkViewContext);
      item.add(linkListPanel);

      ModelContext projectModelContext = new ModelContext(modelContext);
      projectModelContext.setEntity(project);
      PropertyConfig applicationPropertyConfig = project
          .getConceptConfig().getPropertyConfig("application");
      projectModelContext.setPropertyConfig(applicationPropertyConfig);
      ViewContext projectViewContext = new ViewContext(viewContext);
      projectViewContext.setWicketId("appLinkPanel");
      String webApplication = getLocalizer().getString("webApplication", this);
View Full Code Here

      entityContext.setEntity(entity);

      PropertiesConfig propertiesConfig = conceptConfig
          .getPropertiesConfig();
      for (IEntity propertyConfigEntity : propertiesConfig) {
        PropertyConfig propertyConfig = (PropertyConfig) propertyConfigEntity;
        if (propertyConfig.isEssential()) {
          String propertyKey = conceptConfig.getCode() + "."
              + propertyConfig.getCode();
          String propertyName = getLocalizer().getString(propertyKey,
              this);
          PropertyNameLabelValuePanelPair propertyNameLabelValuePanelPair = new PropertyNameLabelValuePanelPair();
          Label propertyNameLabel = new Label("propertyName",
              propertyName);
          propertyNameLabelValuePanelPair
              .setPropertyNameLabel(propertyNameLabel);

          entityContext.setPropertyConfig(propertyConfig);
          ViewContext propertiesViewContext = new ViewContext(
              viewContext);
          propertiesViewContext.setWicketId("valuePanel");
          Panel essentialPropertyPanel;
          if (propertyConfig.getPropertyClass()
              .equals("java.net.URL")
              || propertyConfig.getPropertyClass().equals(
                  "org.dmlite.type.email.Email")) {
            essentialPropertyPanel = new ExternalLinkPanel(
                entityContext, propertiesViewContext);
          } else if (propertyConfig.getPropertyClass().equals(
              "java.lang.String")
              && propertyConfig.isValidateType()
              && (propertyConfig.getValidationType().equals(
                  "java.net.URL") || propertyConfig
                  .getValidationType().equals(
                      "org.dmlite.type.email.Email"))) {
            essentialPropertyPanel = new ExternalLinkPanel(
                entityContext, propertiesViewContext);
          } else if (propertyConfig.getPropertyClass().equals(
              "java.lang.Boolean")) {
            essentialPropertyPanel = new CheckBoxPanel(
                entityContext, propertiesViewContext);
          } else if (propertyConfig.getPropertyClass().equals(
              "java.lang.String")
              && propertyConfig.getDisplayLengthInt() > App.MIN_LONG_TEXT_LENGTH) {
            essentialPropertyPanel = new MultiLineLabelPanel(
                entityContext, propertiesViewContext);
          } else {
            essentialPropertyPanel = new LabelPanel(entityContext,
                propertiesViewContext);
View Full Code Here

      ConceptConfig conceptConfig = entity.getConceptConfig();
      if (conceptConfig != null) {
        PropertiesConfig propertiesConfig = conceptConfig
            .getPropertiesConfig();
        for (IEntity config : propertiesConfig) {
          PropertyConfig propertyConfig = (PropertyConfig) config;
          Class propertyClass = propertyConfig
              .getPropertyClassObject();
          String propertyCode = propertyConfig.getCode();
          if (propertyCode.equals("code")) {
            continue;
          }
          String conceptDotProperty = conceptConfig.getCode() + "."
              + propertyCode;
          Element codeChild = element.element(propertyCode);
          if (codeChild != null) {
            String propertyStringValue = codeChild.getText().trim();
            if (propertyClass == String.class) {
              entity.setProperty(propertyCode,
                  propertyStringValue);
            } else if (propertyClass == Integer.class) {
              Integer propertyIntegerValue = Transformer
                  .integer(propertyStringValue);
              if (propertyIntegerValue != null) {
                entity.setProperty(propertyCode,
                    propertyIntegerValue);
              } else {
                throw new TypeException("Not a valid Integer: "
                    + propertyStringValue + " ("
                    + conceptDotProperty + ")");
              }
            } else if (propertyClass == Long.class) {
              Long propertyLongValue = Transformer
                  .longInteger(propertyStringValue);
              if (propertyLongValue != null) {
                entity.setProperty(propertyCode,
                    propertyLongValue);
              } else {
                throw new TypeException(
                    "Not a valid Long (integer): "
                        + propertyStringValue + " ("
                        + conceptDotProperty + ")");
              }
            } else if (propertyClass == Float.class) {
              Float propertyFloatValue = Transformer
                  .floatDecimal(propertyStringValue);
              if (propertyFloatValue != null) {
                entity.setProperty(propertyCode,
                    propertyFloatValue);
              } else {
                throw new TypeException(
                    "Not a valid Float (decimal): "
                        + propertyStringValue + " ("
                        + conceptDotProperty + ")");
              }
            } else if (propertyClass == Double.class) {
              Double propertyDoubleValue = Transformer
                  .doubleDecimal(propertyStringValue);
              if (propertyDoubleValue != null) {
                entity.setProperty(propertyCode,
                    propertyDoubleValue);
              } else {
                throw new TypeException(
                    "Not a valid Double (decimal): "
                        + propertyStringValue + " ("
                        + conceptDotProperty + ")");
              }
            } else if (propertyClass == Boolean.class) {
              Boolean propertyBooleanValue = Transformer
                  .logic(propertyStringValue);
              if (propertyBooleanValue != null) {
                entity.setProperty(propertyCode,
                    propertyBooleanValue);
              } else {
                throw new TypeException("Not a valid Boolean: "
                    + propertyStringValue + " ("
                    + conceptDotProperty + ")");
              }
            } else if (propertyClass == Date.class) {
              String datePattern = entity.getConceptConfig()
                  .getContextModelConfig().getDatePattern();
              Date propertyDateValue = Transformer.date(
                  propertyStringValue, datePattern);
              if (propertyDateValue != null) {
                entity.setProperty(propertyCode,
                    propertyDateValue);
              } else {
                throw new TypeException("Not a valid Date: "
                    + propertyStringValue + " ("
                    + conceptDotProperty + ")");
              }
            } else if (propertyClass == URL.class) {
              URL propertyUrlValue = Transformer
                  .url(propertyStringValue);
              if (propertyUrlValue != null) {
                entity.setProperty(propertyCode,
                    propertyUrlValue);
              } else {
                throw new TypeException("Not a valid URL: "
                    + propertyStringValue + " ("
                    + conceptDotProperty + ")");
              }
            } else if (propertyClass == Email.class) {
              Email propertyEmailValue = Transformer
                  .email(propertyStringValue);
              if (propertyEmailValue != null) {
                entity.setProperty(propertyCode,
                    propertyEmailValue);
              } else {
                throw new TypeException("Not a valid Email: "
                    + propertyStringValue + " ("
                    + conceptDotProperty + ")");
              }
            } else {
              throw new TypeException(
                  "Property type not supported by dmLite: "
                      + propertyConfig.getPropertyClass());
            }
          }
        }
      }
    } catch (Exception e) {
View Full Code Here

      item.add(entryConceptLink);

      ModelContext keywordSelectionModelContext = new ModelContext(
          modelContext);
      keywordSelectionModelContext.setEntities(entry);
      PropertyConfig propertyConfig = entryConceptConfig
          .getPropertiesConfig().getFirstMaxTextSizePropertyConfig();
      keywordSelectionModelContext.setPropertyConfig(propertyConfig);

      ViewContext keywordSelectionViewContext = new ViewContext(
          viewContext);
View Full Code Here

  public LabelPanel(final ModelContext modelContext,
      final ViewContext viewContext) {
    super(viewContext.getWicketId());
    try {
      IEntity entity = modelContext.getEntity();
      PropertyConfig propertyConfig = modelContext.getPropertyConfig();
      boolean shortContext = false;
      if (!viewContext.getMoreArgs().isEmpty()) {
        Boolean shortTextBoolean = (Boolean) viewContext.getMoreArgs()
            .get("shortText");
        shortContext = shortTextBoolean.booleanValue();
      }

      String propertyCode = propertyConfig.getCode();
      Class propertyClass = propertyConfig.getPropertyClassObject();
      String propertyValueText = "";
      if (entity != null) {
        if (propertyConfig.isReference()) {
          String neighborCode = propertyConfig.getReferenceNeighbor();
          NeighborConfig neighborConfig = entity.getConceptConfig()
              .getNeighborsConfig().getNeighborConfig(
                  neighborCode);
          String neighborConceptCode = neighborConfig
              .getDestination();
          App app = (App) getApplication();
          IPersistentEntities persistentEntities = app.getDbContext()
              .getPersistentModel().getPersistentEntry(
                  neighborConceptCode);
          IOrderedEntities neighborEntities = null;
          if (persistentEntities != null) {
            neighborEntities = (IOrderedEntities) persistentEntities
                .getEntities();
          }
          if (neighborEntities != null) {
            Long referenceOid = (Long) entity
                .getProperty(propertyCode);
            Oid neighborParentOid = new Oid(referenceOid);
            IEntity neighborParent = neighborEntities
                .retrieveByOid(neighborParentOid);
            if (neighborParent != null) {
              PropertyConfig uniquelPropertyConfig = neighborParent
                  .getConceptConfig().getPropertiesConfig()
                  .getFirstUniquePropertyConfig();
              if (uniquelPropertyConfig != null
                  && uniquelPropertyConfig.getPropertyClass()
                      .equals("java.lang.String")) {
                propertyValueText = (String) neighborParent
                    .getProperty(uniquelPropertyConfig
                        .getCode());
              }
            }
          }
        } else if (propertyClass == String.class) {
View Full Code Here

     * What to do when selection changes.
     */
    public void onSelectionChanged() {
      try {
        IEntity lookupEntity = lookupModelContext.getEntity();
        PropertyConfig baseEntityPropertyConfig = baseModelContext
            .getPropertyConfig();
        String action = baseModelContext.getAction();

        if (baseEntityPropertyConfig.isReference()) {
          String neighborCode = baseEntityPropertyConfig
              .getReferenceNeighbor();
          App app = baseViewContext.getApp();
          if (action.equals("add")) {
            IEntity entity = baseModelContext.getEntity();
            entity.setNeighborEntity(neighborCode, lookupEntity);
            ModelContext entityAddFormPageModelContext = new ModelContext(
                baseModelContext);
            entityAddFormPageModelContext
                .setEntities(baseModelContext
                    .getContextEntities());
            entityAddFormPageModelContext.setLookupEntities(null);
            ViewContext entityAddFormPageViewContext = new ViewContext(
                baseViewContext);
            entityAddFormPageViewContext.setUpdate(true);
            setResponsePage(app.getViewMeta().getPage(
                "EntityAddFormPage",
                entityAddFormPageModelContext,
                entityAddFormPageViewContext));
          } else {
            IEntity entity = baseModelContext.getUpdateEntity();
            entity.setNeighborEntity(neighborCode, lookupEntity);
            ModelContext entityEditFormPageModelContext = new ModelContext(
                baseModelContext);
            entityEditFormPageModelContext
                .setEntities(baseModelContext
                    .getContextEntities());
            entityEditFormPageModelContext.setLookupEntities(null);
            ViewContext entityEditFormPageViewContext = new ViewContext(
                baseViewContext);
            entityEditFormPageViewContext.setUpdate(true);
            setResponsePage(app.getViewMeta().getPage(
                "EntityEditFormPage",
                entityEditFormPageModelContext,
                entityEditFormPageViewContext));
          }
        } else {
          throw new DmException(
              "Cannot lookup neighbor for property that is not reference: "
                  + baseEntityPropertyConfig.getCode());
        }
      } catch (DmException e) {
        log.error("Error in EntityLookupTableListView: "
            + e.getMessage());
      }
View Full Code Here

              continue;
            }
            PropertiesConfig parentConceptPropertiesConfig = parentConceptConfig
                .getPropertiesConfig();
            for (IEntity parentPropertyConfigEntity : parentConceptPropertiesConfig) {
              PropertyConfig parentConceptPropertyConfig = (PropertyConfig) parentPropertyConfigEntity;
              if (parentConceptPropertyConfig.isEssential()) {
                IEntity parentEntity = entity
                    .getNeighborEntity(neighborConfig
                        .getCode());
                if (parentEntity != null) {
                  String parentCode = parentEntity
                      .getConceptConfig().getCode();
                  String parentPropertyKey = parentCode
                      + "."
                      + parentConceptPropertyConfig
                          .getCode();
                  String parentPropertyName = getLocalizer()
                      .getString(parentPropertyKey, this);
                  Label parentPropertyNameLabel = new Label(
                      "propertyName", parentPropertyName);
                  PropertyNameLabelValuePanelPair propertyNameLabelValuePanelPair = new PropertyNameLabelValuePanelPair();
                  propertyNameLabelValuePanelPair
                      .setPropertyNameLabel(parentPropertyNameLabel);

                  ModelContext parentModelContext = new ModelContext(
                      modelContext);
                  parentModelContext.setEntity(parentEntity);
                  parentModelContext
                      .setPropertyConfig(parentConceptPropertyConfig);

                  ViewContext parentViewContext = new ViewContext(
                      viewContext);
                  parentViewContext.setWicketId("valuePanel");
                  Panel parentPropertyPanel;
                  if (parentConceptPropertyConfig
                      .getPropertyClass().equals(
                          "java.net.URL")
                      || parentConceptPropertyConfig
                          .getPropertyClass()
                          .equals(
                              "org.dmlite.type.email.Email")) {
                    parentPropertyPanel = new ExternalLinkPanel(
                        parentModelContext,
                        parentViewContext);
                  } else {
                    parentPropertyPanel = new LabelPanel(
                        parentModelContext,
                        parentViewContext);
                  } // if
                  if (!app.isNeighborDisplayAllowed(
                      getAppSession(), neighborConfig)) {
                    parentPropertyPanel.setVisible(false);
                  } else if (!app.isPropertyDisplayAllowed(
                      getAppSession(),
                      parentConceptPropertyConfig)) {
                    parentPropertyPanel.setVisible(false);
                  }

                  propertyNameLabelValuePanelPair
                      .setPropertyValuePanel(parentPropertyPanel);
                  propertyNameLabelValuePanelPairs
                      .add(propertyNameLabelValuePanelPair);
                } // if
              } // if
            } // for
          } // if
        } // if
      } // for

      PropertiesConfig propertiesConfig = conceptConfig
          .getPropertiesConfig();
      for (IEntity propertyConfigEntity : propertiesConfig) {
        PropertyConfig propertyConfig = (PropertyConfig) propertyConfigEntity;
        if (!propertyConfig.isReference()) {
          String propertyKey = conceptCode + "."
              + propertyConfig.getCode();
          String propertyName = getLocalizer().getString(propertyKey,
              this);
          Label propertyNameLabel = new Label("propertyName",
              propertyName);
          PropertyNameLabelValuePanelPair propertyNameLabelValuePanelPair = new PropertyNameLabelValuePanelPair();
          propertyNameLabelValuePanelPair
              .setPropertyNameLabel(propertyNameLabel);

          entityModelContext.setPropertyConfig(propertyConfig);
          ViewContext propertiesViewContext = new ViewContext(
              viewContext);
          propertiesViewContext.setWicketId("valuePanel");
          Panel propertyValuePanel;
          if (propertyConfig.getPropertyClass()
              .equals("java.net.URL")
              || propertyConfig.getPropertyClass().equals(
                  "org.dmlite.type.email.Email")) {
            propertyValuePanel = new ExternalLinkPanel(
                entityModelContext, propertiesViewContext);
          } else if (propertyConfig.getPropertyClass().equals(
              "java.lang.String")
              && propertyConfig.isValidateType()
              && (propertyConfig.getValidationType().equals(
                  "java.net.URL") || propertyConfig
                  .getValidationType().equals(
                      "org.dmlite.type.email.Email"))) {
            propertyValuePanel = new ExternalLinkPanel(
                entityModelContext, propertiesViewContext);
          } else {
View Full Code Here

      ConceptConfig conceptConfig = entity.getConceptConfig();
      if (conceptConfig != null) {
        PropertiesConfig propertiesConfig = conceptConfig
            .getPropertiesConfig();
        for (IEntity config : propertiesConfig) {
          PropertyConfig propertyConfig = (PropertyConfig) config;
          if (propertyConfig.getDefaultValue() != null) {
            String propertyCode = propertyConfig.getCode();
            Object property = entity.getProperty(propertyCode);
            setPropertyDefaultValue(entity, propertyConfig,
                property);
          }
        }
View Full Code Here

TOP

Related Classes of org.dmlite.model.config.PropertyConfig

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.