private ReverseEngineeringStrategy createReverseEngineeringStrategy(GenerateEntitiesCommandDescriptor descriptor, String catalog, String schema, Collection<String> selectedTableNames) { ReverseEngineeringStrategy strategy = new DefaultReverseEngineeringStrategy() { @Override public List<SchemaSelection> getSchemaSelections() { return selectedTableNames .stream() .map((table) -> new SchemaSelection(catalog, schema, table)) .collect(Collectors.toList()); } }; ReverseEngineeringSettings revengsettings = new ReverseEngineeringSettings(strategy) .setDefaultPackageName(descriptor.getTargetPackage()) .setDetectManyToMany(true) .setDetectOneToOne(true) .setDetectOptimisticLock(true); strategy.setSettings(revengsettings); return strategy; }
private ReverseEngineeringStrategy createReverseEngineeringStrategy() { DefaultReverseEngineeringStrategy defaultStrategy = new DefaultReverseEngineeringStrategy(); ReverseEngineeringStrategy strategy = defaultStrategy; if(revengFiles!=null) { OverrideRepository or = new OverrideRepository(); String[] fileNames = revengFiles.list(); for (int i = 0; i < fileNames.length; i++) { or.addFile(new File(fileNames[i]) ); } strategy = or.getReverseEngineeringStrategy(defaultStrategy); } if(reverseEngineeringStrategyClass!=null) { strategy = loadreverseEngineeringStrategy(reverseEngineeringStrategyClass, strategy); } ReverseEngineeringSettings qqsettings = new ReverseEngineeringSettings(strategy).setDefaultPackageName(packageName) .setDetectManyToMany( detectManyToMany ) .setDetectOneToOne( detectOneToOne ) .setDetectOptimisticLock( detectOptimisticLock ); defaultStrategy.setSettings(qqsettings); strategy.setSettings(qqsettings); return strategy; }
protected void doConfiguration( Configuration configuration ) { JDBCMetaDataConfiguration jmdc = (JDBCMetaDataConfiguration) configuration; super.doConfiguration( jmdc ); jmdc.setPreferBasicCompositeIds( getExporterMojo().getComponentProperty( "preferbasiccompositeids", true ) ); ReverseEngineeringStrategy strategy = new DefaultReverseEngineeringStrategy(); strategy = loadRevengFile( strategy ); strategy = loadReverseStrategy( strategy ); ReverseEngineeringSettings qqsettings = new ReverseEngineeringSettings( strategy ); String packageName = getExporterMojo().getComponentProperty( "packagename" ); if ( packageName != null ) { qqsettings.setDefaultPackageName( packageName ); } String detectManyToMany = getExporterMojo().getComponentProperty( "detectmanytomany" ); if ( "false".equals( detectManyToMany ) ) { qqsettings.setDetectManyToMany( false ); } String detectOptimisticLock = getExporterMojo().getComponentProperty( "detectoptmisticlock" ); if ( "false".equals( detectOptimisticLock ) ) { qqsettings.setDetectOptimisticLock( false ); } strategy.setSettings( qqsettings ); jmdc.setReverseEngineeringStrategy( strategy ); jmdc.readFromJDBC(); }