if (dismd.getStrategy() != null) str.append(" strategy=\"" + dismd.getStrategy() + "\""); if (dismd.getColumnName() != null && dismd.getColumnMetaData() == null) str.append(" column=\"" + dismd.getColumnName() + "\""); if (dismd.getValue() != null) str.append(" value=\"" + dismd.getValue() + "\""); if (dismd.getIndexed() != null) str.append(" indexed=\"" + dismd.getIndexed() + "\""); if (dismd.getColumnMetaData() != null) str.append(getXMLForMetaData(dismd.getColumnMetaData(), prefix + indent,indent)); if (dismd.getIndexMetaData() != null) str.append(getXMLForMetaData(dismd.getIndexMetaData(), prefix + indent,indent)); processExtensions(dismd.getExtensions(), str, prefix, indent);
public DiscriminatorMetadata setStrategy(DiscriminatorStrategy str) { if (str == DiscriminatorStrategy.CLASS_NAME) { getInternal().setStrategy(org.datanucleus.metadata.DiscriminatorStrategy.CLASS_NAME); } else if (str == DiscriminatorStrategy.VALUE_MAP) { getInternal().setStrategy(org.datanucleus.metadata.DiscriminatorStrategy.VALUE_MAP); } else if (str == DiscriminatorStrategy.NONE) { getInternal().setStrategy(org.datanucleus.metadata.DiscriminatorStrategy.NONE); } return this; }
public DiscriminatorMetadata setColumn(String name) { getInternal().setColumnName(name); return this; }
private void initializeDiscriminatorMapping(DiscriminatorMetaData dismd) { if (dismd != null) { discriminatorMetaData = dismd; if (dismd.getStrategy() == DiscriminatorStrategy.CLASS_NAME) { discriminatorMapping = new DiscriminatorStringMapping( dba, this, dba.getMappingManager(storeMgr).getMapping(String.class)); } else if (dismd.getStrategy() == DiscriminatorStrategy.VALUE_MAP) { ColumnMetaData disColmd = dismd.getColumnMetaData(); if (disColmd != null && disColmd.getJdbcType() != null) { if (disColmd.getJdbcType().equalsIgnoreCase("INTEGER") || disColmd.getJdbcType().equalsIgnoreCase("BIGINT") || disColmd.getJdbcType().equalsIgnoreCase("NUMERIC")) { discriminatorMapping = new DiscriminatorLongMapping(dba, this, dba .getMappingManager(storeMgr).getMapping(Long.class)); } else { discriminatorMapping = new DiscriminatorStringMapping( dba, this, dba.getMappingManager(storeMgr).getMapping(String.class)); } } else { discriminatorMapping = new DiscriminatorStringMapping( dba, this, dba.getMappingManager(storeMgr).getMapping(String.class)); } } } }
dismd.setColumnName(column); dismd.setValue(value); dismd.setStrategy(strategy); dismd.setIndexed(indexed); if (columns != null && columns.length > 0) dismd.setColumnMetaData(colmd);
discrimMetaData = new DiscriminatorMetaData(); InheritanceMetaData embInhMd = new InheritanceMetaData(); embInhMd.setParent(rootEmbCmd); discrimMetaData.setParent(embInhMd); if (dismd.getStrategy() != null && dismd.getStrategy() != DiscriminatorStrategy.NONE) discrimMetaData.setStrategy(dismd.getStrategy()); discrimMetaData.setStrategy(DiscriminatorStrategy.CLASS_NAME); // Fallback to class name if (embDismd != null && embDismd.getColumnMetaData() != null) disColmd.setName(embDismd.getColumnMetaData().getName()); ColumnMetaData colmd = dismd.getColumnMetaData(); if (colmd != null && colmd.getName() != null) discrimMetaData.setColumnMetaData(disColmd);
public DiscriminatorStrategy getStrategy() { org.datanucleus.metadata.DiscriminatorStrategy str = getInternal().getStrategy(); if (str == org.datanucleus.metadata.DiscriminatorStrategy.CLASS_NAME) { return DiscriminatorStrategy.CLASS_NAME; } else if (str == org.datanucleus.metadata.DiscriminatorStrategy.VALUE_MAP) { return DiscriminatorStrategy.VALUE_MAP; } else if (str == org.datanucleus.metadata.DiscriminatorStrategy.NONE) { return DiscriminatorStrategy.NONE; } return DiscriminatorStrategy.UNSPECIFIED; }
if (dismd.getStrategy() == DiscriminatorStrategy.VALUE_MAP) strValue = targetCmd.getInheritanceMetaData().getDiscriminatorMetaData().getValue();
public ColumnMetadata[] getColumns() { ColumnMetaData internalColmd = getInternal().getColumnMetaData(); if (internalColmd == null) { return null; } ColumnMetadataImpl[] colmds = new ColumnMetadataImpl[1]; colmds[0] = new ColumnMetadataImpl(internalColmd); colmds[0].parent = this; return colmds; }
dismd = new DiscriminatorMetaData(inhmd, discriminatorColumnName, discriminatorValue, "value-map", "false"); dismd = new DiscriminatorMetaData(inhmd, discriminatorColumnName, discriminatorValue, "class-name", "false"); dismd.setColumnMetaData(discolmd);
if (dismd.getColumnMetaData() == null) ColumnMetaData colmd = new ColumnMetaData(); colmd.setName(id.getName()); dismd.setColumnMetaData(colmd); ColumnMetaData colmd = dismd.getColumnMetaData(); if (colmd.getName() == null) Column column = table.addColumn(getType(), id, this, dismd.getColumnMetaData()); table.getStoreManager().getMappingManager().createDatastoreMapping(delegate, column, getType());
public String getColumn() { return getInternal().getColumnName(); }
dismd.setValue(discrimValue); dismd.setStrategy(DiscriminatorStrategy.VALUE_MAP);
dismd.setColumnName(disc.column()); dismd.setStrategy(JDOAnnotationUtils.getDiscriminatorStrategyString(disc.strategy()));
public String getValue() { return getInternal().getValue(); }
public IndexMetadata getIndexMetadata() { IndexMetaData internalIdxmd = getInternal().getIndexMetaData(); if (internalIdxmd == null) { return null; } IndexMetadataImpl idxmd = new IndexMetadataImpl(internalIdxmd); idxmd.parent = this; return idxmd; }
public DiscriminatorMetadata setIndexed(Indexed idx) { if (idx == Indexed.FALSE) { getInternal().setIndexed(IndexedValue.FALSE); } else if (idx == Indexed.TRUE) { getInternal().setIndexed(IndexedValue.TRUE); } else if (idx == Indexed.UNIQUE) { getInternal().setIndexed(IndexedValue.UNIQUE); } return this; }
DiscriminatorMetaData discmd = new DiscriminatorMetaData(inhmd, null, discrimValue, DiscriminatorStrategy.VALUE_MAP.toString(), null); inhmd.setDiscriminatorMetaData(discmd);
dismd.setColumnName(discriminatorColumnName); dismd.setValue(discriminatorValue).setStrategy("value-map").setIndexed("false"); dismd.setColumnName(discriminatorColumnName); dismd.setValue(discriminatorValue).setStrategy("value-map").setIndexed("false"); dismd.setColumnMetaData(discolmd); if (discriminatorColumnDdl != null)
DiscriminatorStrategy strategy = discMapping.getTable().getDiscriminatorMetaData().getStrategy(); if (strategy != DiscriminatorStrategy.NONE)