Exemplo n.º 1
0
 /** @param columnMetaData */
 public void addColumnMetaData(ColumnMetaData columnMetaData) {
   if (null == columnMetaData) {
     return;
   }
   if (!containColumnName(columnMetaData.getName())) {
     names.add(columnMetaData.getName());
     columnMetaDatas.put(columnMetaData.getName(), columnMetaData);
   }
 }
Exemplo n.º 2
0
  /**
   * @param columnsName
   * @return
   */
  public List<ColumnMetaData> intersectColumnsMetaData(List<String> columnsName) {
    List<ColumnMetaData> columnsMetaData = new ArrayList<ColumnMetaData>();

    for (ColumnMetaData columnMetaData : this.columnsName) {
      if (!columnsName.contains(columnMetaData.getName())) {
        columnsMetaData.add(columnMetaData);
      }
    }

    return columnsMetaData;
  }
Exemplo n.º 3
0
  /**
   * Initialisation method. This should be called AFTER using the populate method if you are going
   * to use populate. It creates the internal convenience arrays etc needed for normal operation.
   */
  public void initialise(ClassLoaderResolver clr, MetaDataManager mmgr) {
    if (hasExtension("field-name")) {
      // User has provided extension "field-name" meaning that we store the version in the column
      // for the specified field (like in JPA)
      String val = getValueForExtension("field-name");
      if (!StringUtils.isWhitespace(val)) {
        this.fieldName = val;
        this.columnName = null;
      }
    }

    if (fieldName == null) {
      // Cater for user specifying column name, or column
      if (columnMetaData == null && columnName != null) {
        columnMetaData = new ColumnMetaData();
        columnMetaData.setName(columnName);
        columnMetaData.parent = this;
      }

      // Interpret the "indexed" value to create our IndexMetaData where it wasn't specified that
      // way
      if (indexMetaData == null
          && columnMetaData != null
          && indexed != null
          && indexed != IndexedValue.FALSE) {
        indexMetaData = new IndexMetaData();
        indexMetaData.setUnique(indexed == IndexedValue.UNIQUE);
        indexMetaData.addColumn(columnMetaData.getName());
        indexMetaData.parent = this;
      }
    } else {
      if (getParent() instanceof AbstractClassMetaData) {
        AbstractMemberMetaData vermmd =
            ((AbstractClassMetaData) getParent()).getMetaDataForMember(fieldName);
        if (vermmd != null && java.util.Date.class.isAssignableFrom(vermmd.getType())) {
          NucleusLogger.GENERAL.debug(
              "Setting version-strategy of field "
                  + vermmd.getFullFieldName()
                  + " to DATE_TIME since is Date-based");
          versionStrategy = VersionStrategy.DATE_TIME;
        }
      }
    }
  }