@Override public AtlasClassificationDef getClassificationDefByName(String name) throws AtlasBaseException { AtlasClassificationDef ret = typeRegistry.getClassificationDefByName(name); if (ret == null) { throw new AtlasBaseException(AtlasErrorCode.TYPE_NAME_NOT_FOUND, name); } return ret; }
@Override public AtlasClassificationDef getClassificationDefByName(String name) throws AtlasBaseException { AtlasClassificationDef ret = typeRegistry.getClassificationDefByName(name); if (ret == null) { throw new AtlasBaseException(AtlasErrorCode.TYPE_NAME_NOT_FOUND, name); } return ret; }
private String getCreateTag(String classificationName) throws AtlasBaseException { AtlasClassificationDef classificationDef = typeRegistry.getClassificationDefByName(classificationName); if(classificationDef != null) { return classificationName; } classificationDef = new AtlasClassificationDef(classificationName); AtlasTypesDef typesDef = new AtlasTypesDef(); typesDef.setClassificationDefs(Collections.singletonList(classificationDef)); typeDefStore.createTypesDef(typesDef); LOG.info("created classification: {}", classificationName); return classificationName; } }
@Override public AtlasVertex preDeleteByName(String name) throws AtlasBaseException { if (LOG.isDebugEnabled()) { LOG.debug("==> AtlasClassificationDefStoreV1.preDeleteByName({})", name); } AtlasClassificationDef existingDef = typeRegistry.getClassificationDefByName(name); AtlasAuthorizationUtils.verifyAccess(new AtlasTypeAccessRequest(AtlasPrivilege.TYPE_DELETE, existingDef), "delete classification-def ", name); AtlasVertex ret = typeDefStore.findTypeVertexByNameAndCategory(name, TypeCategory.TRAIT); if (AtlasGraphUtilsV2.typeHasInstanceVertex(name)) { throw new AtlasBaseException(AtlasErrorCode.TYPE_HAS_REFERENCES, name); } if (ret == null) { throw new AtlasBaseException(AtlasErrorCode.TYPE_NAME_NOT_FOUND, name); } typeDefStore.deleteTypeVertexOutEdges(ret); if (LOG.isDebugEnabled()) { LOG.debug("<== AtlasClassificationDefStoreV1.preDeleteByName({}): ret=", name, ret); } return ret; }
private void createClassificationDefIfNotExists(String classificationName, TransformerContext context) { AtlasTypeRegistry typeRegistry = context != null ? context.getTypeRegistry() : null; if (typeRegistry != null) { try { AtlasClassificationDef classificationDef = typeRegistry.getClassificationDefByName(classificationName); if (classificationDef == null) { AtlasTypeDefStore typeDefStore = context.getTypeDefStore(); if (typeDefStore != null) { classificationDef = new AtlasClassificationDef(classificationName); AtlasTypesDef typesDef = new AtlasTypesDef(); typesDef.setClassificationDefs(Collections.singletonList(classificationDef)); typeDefStore.createTypesDef(typesDef); LOG.info("created classification: {}", classificationName); } else { LOG.warn("skipped creation of classification {}. typeDefStore is null", classificationName); } } } catch (AtlasBaseException e) { LOG.error("Error creating classification: {}", classificationName, e); } } } }
@Override public AtlasVertex preDeleteByName(String name) throws AtlasBaseException { if (LOG.isDebugEnabled()) { LOG.debug("==> AtlasClassificationDefStoreV1.preDeleteByName({})", name); } AtlasClassificationDef existingDef = typeRegistry.getClassificationDefByName(name); AtlasAuthorizationUtils.verifyAccess(new AtlasTypeAccessRequest(AtlasPrivilege.TYPE_DELETE, existingDef), "delete classification-def ", name); AtlasVertex ret = typeDefStore.findTypeVertexByNameAndCategory(name, TypeCategory.TRAIT); if (AtlasGraphUtilsV2.typeHasInstanceVertex(name)) { throw new AtlasBaseException(AtlasErrorCode.TYPE_HAS_REFERENCES, name); } if (ret == null) { throw new AtlasBaseException(AtlasErrorCode.TYPE_NAME_NOT_FOUND, name); } typeDefStore.deleteTypeVertexOutEdges(ret); if (LOG.isDebugEnabled()) { LOG.debug("<== AtlasClassificationDefStoreV1.preDeleteByName({}): ret=", name, ret); } return ret; }
private void processTypesDef(ExportContext context) { AtlasTypesDef typesDef = context.result.getData().getTypesDef(); for (String entityType : context.entityTypes) { AtlasEntityDef entityDef = typeRegistry.getEntityDefByName(entityType); typesDef.getEntityDefs().add(entityDef); } for (String classificationType : context.classificationTypes) { AtlasClassificationDef classificationDef = typeRegistry.getClassificationDefByName(classificationType); typesDef.getClassificationDefs().add(classificationDef); } for (String structType : context.structTypes) { AtlasStructDef structDef = typeRegistry.getStructDefByName(structType); typesDef.getStructDefs().add(structDef); } for (String enumType : context.enumTypes) { AtlasEnumDef enumDef = typeRegistry.getEnumDefByName(enumType); typesDef.getEnumDefs().add(enumDef); } }
AtlasClassificationDef superTypeDef = typeRegistry.getClassificationDefByName(superType); Set<String> entityTypeNames = superTypeDef.getEntityTypes();
private void updateClassificationDef(AtlasTypesDef typeDefinitionMap, AtlasImportResult result) throws AtlasBaseException { for (AtlasClassificationDef def: typeDefinitionMap.getClassificationDefs()) { AtlasClassificationDef existing = typeRegistry.getClassificationDefByName(def.getName()); if(existing != null && addAttributes(existing, def)) { typeDefStore.updateClassificationDefByName(existing.getName(), existing); result.incrementMeticsCounter("typedef:classification:update"); } } }
private void updateClassificationDef(AtlasTypesDef typeDefinitionMap, AtlasImportResult result) throws AtlasBaseException { for (AtlasClassificationDef def : typeDefinitionMap.getClassificationDefs()) { AtlasClassificationDef existing = typeRegistry.getClassificationDefByName(def.getName()); if (existing != null && addAttributes(existing, def)) { typeDefStore.updateClassificationDefByName(existing.getName(), existing); result.incrementMeticsCounter("typedef:classification:update"); } } }
AtlasClassificationDef oldClassifDef = typeRegistry.getClassificationDefByName(newClassifDef.getName());
assertNotNull(typeRegistry.getClassificationDefByName(classificationType), classificationType + ": classification not found"); assertNotNull(typeRegistry.getEntityDefByName(entityType), entityType + ": entity not found");
assertNotNull(typeRegistry.getClassificationDefByName(classificationType), classificationType + ": classification not found"); assertNotNull(typeRegistry.getEntityDefByName(entityType), entityType + ": entity not found");
@Override public AtlasClassificationDef updateByName(String name, AtlasClassificationDef classificationDef) throws AtlasBaseException { if (LOG.isDebugEnabled()) { LOG.debug("==> AtlasClassificationDefStoreV1.updateByName({}, {})", name, classificationDef); } AtlasClassificationDef existingDef = typeRegistry.getClassificationDefByName(name); AtlasAuthorizationUtils.verifyAccess(new AtlasTypeAccessRequest(AtlasPrivilege.TYPE_UPDATE, existingDef), "update classification-def ", name); validateType(classificationDef); AtlasType type = typeRegistry.getType(classificationDef.getName()); if (type.getTypeCategory() != org.apache.atlas.model.TypeCategory.CLASSIFICATION) { throw new AtlasBaseException(AtlasErrorCode.TYPE_MATCH_FAILED, classificationDef.getName(), TypeCategory.TRAIT.name()); } AtlasVertex vertex = typeDefStore.findTypeVertexByNameAndCategory(name, TypeCategory.TRAIT); if (vertex == null) { throw new AtlasBaseException(AtlasErrorCode.TYPE_NAME_NOT_FOUND, name); } updateVertexPreUpdate(classificationDef, (AtlasClassificationType)type, vertex); updateVertexAddReferences(classificationDef, vertex); AtlasClassificationDef ret = toClassificationDef(vertex); if (LOG.isDebugEnabled()) { LOG.debug("<== AtlasClassificationDefStoreV1.updateByName({}, {}): {}", name, classificationDef, ret); } return ret; }
@Override public AtlasClassificationDef updateByName(String name, AtlasClassificationDef classificationDef) throws AtlasBaseException { if (LOG.isDebugEnabled()) { LOG.debug("==> AtlasClassificationDefStoreV1.updateByName({}, {})", name, classificationDef); } AtlasClassificationDef existingDef = typeRegistry.getClassificationDefByName(name); AtlasAuthorizationUtils.verifyAccess(new AtlasTypeAccessRequest(AtlasPrivilege.TYPE_UPDATE, existingDef), "update classification-def ", name); validateType(classificationDef); AtlasType type = typeRegistry.getType(classificationDef.getName()); if (type.getTypeCategory() != org.apache.atlas.model.TypeCategory.CLASSIFICATION) { throw new AtlasBaseException(AtlasErrorCode.TYPE_MATCH_FAILED, classificationDef.getName(), TypeCategory.TRAIT.name()); } AtlasVertex vertex = typeDefStore.findTypeVertexByNameAndCategory(name, TypeCategory.TRAIT); if (vertex == null) { throw new AtlasBaseException(AtlasErrorCode.TYPE_NAME_NOT_FOUND, name); } updateVertexPreUpdate(classificationDef, (AtlasClassificationType)type, vertex); updateVertexAddReferences(classificationDef, vertex); AtlasClassificationDef ret = toClassificationDef(vertex); if (LOG.isDebugEnabled()) { LOG.debug("<== AtlasClassificationDefStoreV1.updateByName({}, {}): {}", name, classificationDef, ret); } return ret; }
private void processTypesDef(ExportContext context) { AtlasTypesDef typesDef = context.result.getData().getTypesDef(); for (String entityType : context.entityTypes) { AtlasEntityDef entityDef = typeRegistry.getEntityDefByName(entityType); typesDef.getEntityDefs().add(entityDef); } for (String classificationType : context.classificationTypes) { AtlasClassificationDef classificationDef = typeRegistry.getClassificationDefByName(classificationType); typesDef.getClassificationDefs().add(classificationDef); } for (String structType : context.structTypes) { AtlasStructDef structDef = typeRegistry.getStructDefByName(structType); typesDef.getStructDefs().add(structDef); } for (String enumType : context.enumTypes) { AtlasEnumDef enumDef = typeRegistry.getEnumDefByName(enumType); typesDef.getEnumDefs().add(enumDef); } }
AtlasClassificationDef oldClassifDef = typeRegistry.getClassificationDefByName(newClassifDef.getName());