@Override public boolean isSuperClassOf(final OClass iClass) { return delegate.isSuperClassOf(iClass); }
@Override protected boolean include(final ORecord record) { return record instanceof ODocument && targetClass .isSuperClassOf(ODocumentInternal.getImmutableSchemaClass(((ODocument) record))); }
@Override public boolean hasNext() { if(vertex == null) { while (iterator.hasNext()) { vertex = (OrientVertex) iterator.next(); if (vertex != null && klass.isSuperClassOf(vertex.getRecord().getSchemaClass())) { return true; } } } else { return true; } return false; }
if(ret!=null && (ret.equals(thisOClass) || ret.isSuperClassOf(thisOClass))) continue; else if(ret!=null && thisOClass.isSuperClassOf(ret)) { ret = thisOClass; candidates.clear();
if(ret!=null && (ret.equals(thisOClass) || ret.isSuperClassOf(thisOClass))) continue; else if(ret!=null && thisOClass.isSuperClassOf(ret)) { ret = thisOClass; candidates.clear();
/** * Called by class iterator. */ public List<ORecordOperation> getNewRecordEntriesByClass(final OClass iClass, final boolean iPolymorphic) { final List<ORecordOperation> result = new ArrayList<ORecordOperation>(); if (iClass == null) // RETURN ALL THE RECORDS for (ORecordOperation entry : allEntries.values()) { if (entry.type == ORecordOperation.CREATED) result.add(entry); } else { // FILTER RECORDS BY CLASSNAME for (ORecordOperation entry : allEntries.values()) { if (entry.type == ORecordOperation.CREATED) if (entry.getRecord() != null && entry.getRecord() instanceof ODocument) { if (iPolymorphic) { if (iClass.isSuperClassOf(((ODocument) entry.getRecord()).getSchemaClass())) result.add(entry); } else if (iClass.getName().equals(((ODocument) entry.getRecord()).getClassName())) result.add(entry); } } } return result; }
protected boolean filter(final ORecord iRecord, final OCommandContext iContext) { if (iRecord instanceof ODocument) { // CHECK THE TARGET CLASS final ODocument recordSchemaAware = (ODocument) iRecord; Map<String, String> targetClasses = parsedTarget.getTargetClasses(); // check only classes that specified in query will go to result set if ((targetClasses != null) && (!targetClasses.isEmpty())) { for (String targetClass : targetClasses.keySet()) { if (!((OMetadataDefault) getDatabase().getMetadata()).getImmutableSchemaSnapshot().getClass(targetClass) .isSuperClassOf(ODocumentInternal.getImmutableSchemaClass(recordSchemaAware))) return false; } iContext.updateMetric("documentAnalyzedCompatibleClass", +1); } } return evaluateRecord(iRecord, iContext); }
}else if(!candidateClass.isSuperClassOf(aClass)){ return null;
String className = dbClass.getName(); if (!dbClass.isSuperClassOf(orole) && !dbClass.isSuperClassOf(ouser) && !dbClass.isSuperClassOf(oidentity)) { classesToDrop.put(className, dbClass); for (OIndex<?> index : dbClass.getIndexes()) {
@Override public RESULT onTrigger(TYPE iType, ORecord iRecord) { if(iRecord instanceof ODocument) { ODocument doc = (ODocument) iRecord; if(classA.isSuperClassOf(doc.getSchemaClass())) { // System.out.println("During "+iType+" document should track changes: "+doc.isTrackingChanges()); assertTrue("During "+iType+" document should track changes", doc.isTrackingChanges()); } } return RESULT.RECORD_NOT_CHANGED; }
if (restricted != null && restricted.isSuperClassOf(record.getSchemaClass())) { for (OProperty prop : restricted.properties()) { fieldsToPreserve.field(prop.getName(), record.<Object>field(prop.getName()));
private OClass getOrCreateClassOnGraph(ODatabaseDocument db, String iClassName, String iSuperClass) { OClass cls;// GRAPH OSchema schema = db.getMetadata().getSchema(); cls = schema.getClass(iClassName); if (cls == null) { if (iSuperClass != null) { final OClass superClass = schema.getClass(iSuperClass); if (superClass == null) throw new OETLLoaderException("Cannot find super class '" + iSuperClass + "'"); OSchema schema1 = db.getMetadata().getSchema(); if (schema1.getClass("V").isSuperClassOf(superClass)) { // VERTEX cls = db.createVertexClass(iClassName).setSuperClasses(Arrays.asList(superClass)); log(Level.FINE, "- OrientDBLoader: created vertex class '%s' extends '%s'", iClassName, iSuperClass); } else { // EDGE cls = db.createEdgeClass(iClassName).setSuperClasses(Arrays.asList(superClass)); log(Level.FINE, "- OrientDBLoader: created edge class '%s' extends '%s'", iClassName, iSuperClass); } } else { // ALWAYS CREATE SUB-VERTEX cls = db.createVertexClass(iClassName); log(Level.FINE, "- OrientDBLoader: created vertex class '%s'", iClassName); } } return cls; }
if (restricted != null && restricted.isSuperClassOf(record.getSchemaType().orElse(null))) { for (OProperty prop : restricted.properties()) { fieldsToPreserve.field(prop.getName(), record.<Object>getProperty(prop.getName()));
protected void validateLink(final IValidatable<T> validatable, final OProperty p, final Object linkValue) { if (linkValue == null) validatable.error(newValidationError("nulllink")); else { ORecord linkedRecord = null; if (linkValue instanceof OIdentifiable) linkedRecord = ((OIdentifiable) linkValue).getRecord(); else if (linkValue instanceof String) linkedRecord = new ORecordId((String) linkValue).getRecord(); else validatable.error(newValidationError("linkwrong")); if (linkedRecord != null && p.getLinkedClass() != null) { if (!(linkedRecord instanceof ODocument)) validatable.error(newValidationError("linktypewrong", "linkedClass", p.getLinkedClass(), "identity", linkedRecord.getIdentity())); final ODocument doc = (ODocument) linkedRecord; // AT THIS POINT CHECK THE CLASS ONLY IF != NULL BECAUSE IN CASE // OF GRAPHS THE RECORD COULD BE PARTIAL if (doc.getSchemaClass() != null && !p.getLinkedClass().isSuperClassOf( doc.getSchemaClass())) validatable.error(newValidationError("linktypewrong", "linkedClass", p.getLinkedClass(), "identity", linkedRecord.getIdentity())); } } }
protected void validateLink(final IValidatable<T> validatable, final OProperty p, final Object linkValue) { if (linkValue == null) validatable.error(newValidationError("nulllink")); else { ORecord linkedRecord = null; if (linkValue instanceof OIdentifiable) linkedRecord = ((OIdentifiable) linkValue).getRecord(); else if (linkValue instanceof String) linkedRecord = new ORecordId((String) linkValue).getRecord(); else validatable.error(newValidationError("linkwrong")); if (linkedRecord != null && p.getLinkedClass() != null) { if (!(linkedRecord instanceof ODocument)) validatable.error(newValidationError("linktypewrong", "linkedClass", p.getLinkedClass(), "identity", linkedRecord.getIdentity())); final ODocument doc = (ODocument) linkedRecord; // AT THIS POINT CHECK THE CLASS ONLY IF != NULL BECAUSE IN CASE // OF GRAPHS THE RECORD COULD BE PARTIAL if (doc.getSchemaClass() != null && !p.getLinkedClass().isSuperClassOf( doc.getSchemaClass())) validatable.error(newValidationError("linktypewrong", "linkedClass", p.getLinkedClass(), "identity", linkedRecord.getIdentity())); } } }
if (doc.getImmutableSchemaClass() != null && !schemaClass.isSuperClassOf(doc.getImmutableSchemaClass())) throw new OValidationException( "The field '" + p.getFullName() + "' has been declared as " + p.getType() + " of type '" + schemaClass.getName()