package org.dmd.dmt.shared.generated.types;
import java.io.Serializable;
import org.dmd.dmc.DmcInputStreamIF;
import org.dmd.dmc.DmcOutputStreamIF;
import org.dmd.dmc.DmcAttribute;
import org.dmd.dmc.DmcAttributeInfo;
import org.dmd.dmc.DmcValueException;
import org.dmd.dmt.shared.generated.dmo.NamedObjHMDMO;
/**
* This is the generated DmcAttribute derivative for values of type NamedObjHM
* <P>
* Generated from the dmt schema at version 0.1
* <P>
* This code was auto-generated by the dmogenerator utility and shouldn't be alterred manually!
* Generated from: org.dmd.dms.util.DmoTypeFormatter.dumpNormalREFType(DmoTypeFormatter.java:197)
*/
@SuppressWarnings("serial")
abstract public class DmcTypeNamedObjHMREF extends DmcAttribute<NamedObjHMDMO> implements Serializable {
public DmcTypeNamedObjHMREF(){
}
public DmcTypeNamedObjHMREF(DmcAttributeInfo ai){
super(ai);
}
protected NamedObjHMDMO typeCheck(Object value) throws DmcValueException {
if (value instanceof NamedObjHMDMO)
return((NamedObjHMDMO)value);
throw(new DmcValueException("Object of class: " + value.getClass().getName() + " passed where object compatible with NamedObjHMDMO expected."));
}
@Override
public void serializeValue(DmcOutputStreamIF dos, NamedObjHMDMO value) throws Exception {
value.serializeIt(dos);
}
@Override
public NamedObjHMDMO deserializeValue(DmcInputStreamIF dis) throws Exception {
NamedObjHMDMO rc = (NamedObjHMDMO)dis.getDMOInstance(dis);
rc.deserializeIt(dis);
return(rc);
}
@Override
public NamedObjHMDMO cloneValue(NamedObjHMDMO value){
return((NamedObjHMDMO)value.cloneIt());
}
}