@Override public List<String> performInsert( InsertOperation insert ) throws MetadataStoreException, MetadataInspectorException { List<String> identifierList = new ArrayList<String>(); for ( MetadataRecord record : insert.getRecords() ) { if ( record != null ) { // TODO: suppor of other registryObjects RegistryPackage ebrimRecord = new RegistryPackage( record.getAsOMElement() ); // TODO: inspect records insert( ebrimRecord ); identifierList.add( ebrimRecord.getIdentifier() ); } } return identifierList; }
public List<ExtrinsicObject> getExtrinsicObjects( String type ) { if ( !extrinsicObjects.containsKey( type ) ) { List<ExtrinsicObject> eos = new ArrayList<ExtrinsicObject>(); List<OMElement> eoElems = adapter.getElements( adapter.getRootElement(), getEOPath( type ) ); for ( OMElement eoElem : eoElems ) { eos.add( new ExtrinsicObject( eoElem ) ); } extrinsicObjects.put( type, eos ); } return extrinsicObjects.get( type ); }
int id = getNewId( conn ); ir.addPreparedArgument( new SQLIdentifier( "internalId" ), id ); ir.addPreparedArgument( new SQLIdentifier( "id" ), registryPackage.getId() ); ir.addPreparedArgument( new SQLIdentifier( "externalId" ), registryPackage.getExtId() ); ir.addPreparedArgument( new SQLIdentifier( "name" ), registryPackage.getName() ); ir.addPreparedArgument( new SQLIdentifier( "description" ), registryPackage.getDesc() ); ir.addPreparedArgument( new SQLIdentifier( "data" ), getAsByteArray( registryPackage.getElement() ) ); for ( ExtrinsicObject eo : registryPackage.getExtrinsicObjects( type.getType() ) ) { insertExtrinsicObject( eo, id, conn ); for ( Association association : registryPackage.getAssociations() ) { insertAssociation( association, id, conn ); for ( Classification classification : registryPackage.getClassifications() ) { insertClassification( classification, id, conn ); for ( ClassificationNode classificationNode : registryPackage.getClassificationNodes() ) { insertClassificationNode( classificationNode, id, conn );
return new RegistryObject( rootEl ); case RegistryPackage: return new RegistryPackage( rootEl ); default: LOG.warn( "Treating registry object '" + type + "' as generic registry object." );
XMLInputFactory inf = XMLInputFactory.newInstance(); XMLStreamReader reader = inf.createXMLStreamReader( resolved.openStream() ); rp = new RegistryPackage( reader );