@Override public OrmMetadataManager getMetadataManager() { return ormContext.getMetadataManager(); }
@Override default OrmMetadataManager getMetadataManager() { return getOrmContext().getMetadataManager(); }
protected AbstractDmoCommand(Dmo dmo){ this.dmo = dmo; this.context = dmo.getOrmContext(); this.db = context.getDb(); this.metadata = context.getMetadata(); this.metadataManager = context.getMetadataManager(); }
@Override public MappingSchema toMappingSchema(OrmContext oc, MetaApi api) { MappingSchemaBuilder ms = new MappingSchemaBuilder(); OrmConvertContextImpl context = new OrmConvertContextImpl(oc, ms); //create entities. Collection<MetaEntity> entities = api.getEntities().values(); entities.forEach(entity -> { toMappingEntity(context, ms, api, entity); }); //create relations. entities.forEach(entity -> { entity.getRelations().values().forEach(relation -> { toMappingRelation(context, ms, api, entity, relation); }); }); //processing the mappings. oc.getMetadataManager().processMappings(context); return ms.build(); }
public DefaultCreateEntityCommand(Dmo dmo,Class<?> entityClass){ super(dmo); this.entityClass = entityClass; if(null != metadata.tryGetEntityMapping(entityClass)){ throw new MappingExistsException("The entity mapping for class '" + entityClass.getName() + "' already exists"); } emb = dmo.getOrmContext().getMappingStrategy().createEntityMappingByClass(context,entityClass); if(null != metadata.tryGetEntityMapping(emb.getEntityName())){ throw new MappingExistsException("Entity named '" + emb.getEntityName() + "' already exists, check the class '" + entityClass.getName() + "'"); } SingleMappingConfigContext mcc = new SingleMappingConfigContext(dmo.getOrmContext(), entityClass, emb); dmo.getOrmContext().getMetadataManager().processMappings(mcc); }
protected void createMetadata(OrmContext oc, MetaApi api) { mappingDatabase(oc.getDb(), api); MappingSchema ms = ormConverter.toMappingSchema(oc, api); for(EntityMapping em : ms.getEntityMappings()) { oc.getMetadataManager().createEntity(oc, em); } //load sqls oc.getMetadataManager().loadSqls(oc); //convert sqls Map<String, SqlCommand> commands = ormConverter.toSqlCommands(oc, api); commands.forEach((k,c) -> { SqlCommand old = oc.getMetadata().tryGetSqlCommand(k); if(null != old) { log.info("The sql command '{}' from '{}' will be replaced by '{}'", k, old.getSource(), c.getSource()); oc.getMetadata().removeSqlCommand(k); } oc.getMetadata().addSqlCommand(k, c); }); }