
com.draagon.meta.manager.db.ObjectMapping Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of metaobjects-omdb Show documentation
Show all versions of metaobjects-omdb Show documentation
Relational Database ObjectManager libraries for MetaData-driven development.
The newest version!
package com.draagon.meta.manager.db;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import com.draagon.meta.MetaField;
import com.draagon.meta.manager.db.defs.BaseArgDef;
public class ObjectMapping {
private ObjectMapping superMap = null;
private Map fieldMapping = new HashMap();
private Map nameMapping = new HashMap();
public ObjectMapping() {}
public void setSuperMapping(ObjectMapping superMap) {
this.superMap = superMap;
}
public ObjectMapping getSuperMapping() {
return this.superMap;
}
public Collection getArguments() {
return nameMapping.values();
}
public Collection getMetaFields() {
return fieldMapping.values();
}
public void addMap( BaseArgDef arg, MetaField mf ) {
fieldMapping.put( arg.getName(), mf );
nameMapping.put( mf.getName(), arg );
}
public MetaField getField( String argName ) {
MetaField mf = fieldMapping.get( argName );
if ( mf == null && superMap != null ) {
return superMap.getField( argName );
}
return mf;
}
public MetaField getField( BaseArgDef argDef ) {
return getField( argDef.getName() );
}
public BaseArgDef getArgDef( String fieldName ) {
BaseArgDef def = nameMapping.get( fieldName );
if ( def == null && superMap != null ) {
return superMap.getArgDef( fieldName );
}
return def;
}
public BaseArgDef getArgDef( MetaField mf ) {
return getArgDef( mf.getName() );
}
public boolean isInThisMap( MetaField mf ) {
if ( nameMapping.get( mf.getName() ) != null ) return true;
return false;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy