@Override @Deprecated public OClass getSuperClass() { initSuperClasses(); return superClasses.isEmpty() ? null : superClasses.get(0); }
@Override public OProperty getProperty(String propertyName) { initSuperClasses(); OProperty p = properties.get(propertyName); if (p != null) return p; for (int i = 0; i < superClasses.size() && p == null; i++) { p = superClasses.get(i).getProperty(propertyName); } return p; }
@Override public Set<OIndex<?>> getInvolvedIndexes(Collection<String> fields) { initSuperClasses(); final Set<OIndex<?>> result = new HashSet<OIndex<?>>(getClassInvolvedIndexes(fields)); for (OImmutableClass superClass : superClasses) { result.addAll(superClass.getInvolvedIndexes(fields)); } return result; }
@Override public void getIndexes(final Collection<OIndex<?>> indexes) { initSuperClasses(); getClassIndexes(indexes); for (OClass superClass : superClasses) { superClass.getIndexes(indexes); } }
public void getRawIndexes(final Collection<OIndex<?>> indexes) { initSuperClasses(); getRawClassIndexes(indexes); for (OImmutableClass superClass : superClasses) { superClass.getRawIndexes(indexes); } }
public void getIndexedProperties(Collection<OProperty> indexedProperties) { for (OProperty p : properties.values()) if (areIndexed(p.getName())) indexedProperties.add(p); initSuperClasses(); for (OImmutableClass superClass : superClasses) { superClass.getIndexedProperties(indexedProperties); } }
@Override public boolean areIndexed(Collection<String> fields) { final OIndexManager indexManager = getDatabase().getMetadata().getIndexManager(); final boolean currentClassResult = indexManager.areIndexed(name, fields); initSuperClasses(); if (currentClassResult) return true; for (OImmutableClass superClass : superClasses) { if (superClass.areIndexed(fields)) return true; } return false; }
public void init() { if (!inited) { initSuperClasses();