Changeset 978
- Timestamp:
- 08/28/10 12:54:10 (18 months ago)
- Location:
- AnalyzerBeans/trunk
- Files:
-
- 26 added
- 15 edited
-
pom.xml (modified) (1 diff)
-
src/main/java/org/eobjects/analyzer/descriptors/ClasspathScanDescriptorProvider.java (modified) (3 diffs)
-
src/main/java/org/eobjects/analyzer/descriptors/DescriptorProvider.java (modified) (1 diff)
-
src/main/java/org/eobjects/analyzer/descriptors/LazyDescriptorProvider.java (modified) (3 diffs)
-
src/main/java/org/eobjects/analyzer/descriptors/SimpleDescriptorProvider.java (modified) (1 diff)
-
src/main/java/org/eobjects/analyzer/job/AnalysisJobBuilder.java (modified) (5 diffs)
-
src/main/java/org/eobjects/analyzer/job/AnalyzerJobBuilder.java (added)
-
src/main/java/org/eobjects/analyzer/job/ExploringAnalyzerJobBuilder.java (modified) (2 diffs)
-
src/main/java/org/eobjects/analyzer/job/JaxbJobFactory.java (added)
-
src/main/java/org/eobjects/analyzer/job/RowProcessingAnalyzerJobBuilder.java (modified) (2 diffs)
-
src/main/java/org/eobjects/analyzer/job/jaxb (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/AnalysisType.java (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/AnalyzerDescriptorType.java (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/AnalyzerType.java (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/ColumnType.java (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/ColumnsType.java (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/ConfiguredPropertiesType.java (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/DataContextType.java (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/InputType.java (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/Job.java (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/JobMetadataType.java (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/ObjectFactory.java (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/OutputType.java (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/ProvidedPropertiesType.java (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/ProvidedPropertyTypeEnum.java (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/SourceType.java (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/TransformationType.java (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/TransformerDescriptorType.java (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/TransformerType.java (added)
-
src/main/java/org/eobjects/analyzer/job/jaxb/package-info.java (added)
-
src/main/java/org/eobjects/analyzer/util/SchemaNavigator.java (modified) (3 diffs)
-
src/main/resources/job.xsd (added)
-
src/test/java/org/eobjects/analyzer/job/AnalysisJobBuilderTest.java (modified) (2 diffs)
-
src/test/java/org/eobjects/analyzer/job/JaxbJobFactoryTest.java (added)
-
src/test/java/org/eobjects/analyzer/job/runner/RowProcessingPublisherTest.java (modified) (1 diff)
-
src/test/java/org/eobjects/analyzer/test/TestHelper.java (modified) (1 diff)
-
src/test/java/org/eobjects/analyzer/test/full/scenarios/NameAndEmailPartEqualityTest.java (modified) (3 diffs)
-
src/test/java/org/eobjects/analyzer/test/full/scenarios/TokenizerAndValueDistributionTest.java (modified) (1 diff)
-
src/test/java/org/eobjects/analyzer/test/full/scenarios/ValueDistributionAndStringAnalysisTest.java (modified) (2 diffs)
-
src/test/resources/example-job-invalid.xml (added)
-
src/test/resources/example-job-valid.xml (added)
Legend:
- Unmodified
- Added
- Removed
-
AnalyzerBeans/trunk/pom.xml
r970 r978 72 72 </plugins> 73 73 </reporting> 74 <repositories>75 <repository>76 <id>repository.jboss.org</id>77 <name>JBoss Repository</name>78 <url>http://repository.jboss.org/maven2</url>79 </repository>74 <repositories> 75 <repository> 76 <id>repository.jboss.org</id> 77 <name>JBoss Repository</name> 78 <url>http://repository.jboss.org/maven2</url> 79 </repository> 80 80 </repositories> 81 81 <dependencies> -
AnalyzerBeans/trunk/src/main/java/org/eobjects/analyzer/descriptors/ClasspathScanDescriptorProvider.java
r975 r978 28 28 private Map<Class<? extends Transformer<?>>, TransformerBeanDescriptor<?>> _transformerBeanDescriptors = new HashMap<Class<? extends Transformer<?>>, TransformerBeanDescriptor<?>>(); 29 29 private Map<Class<? extends Renderer<?, ?>>, RendererBeanDescriptor> _rendererBeanDescriptors = new HashMap<Class<? extends Renderer<?, ?>>, RendererBeanDescriptor>(); 30 31 @Override 32 public AnalyzerBeanDescriptor<?> getAnalyzerBeanDescriptorByDisplayName( 33 String name) { 34 Collection<AnalyzerBeanDescriptor<?>> analyzerBeanDescriptors = getAnalyzerBeanDescriptors(); 35 for (AnalyzerBeanDescriptor<?> analyzerBeanDescriptor : analyzerBeanDescriptors) { 36 if (name.equals(analyzerBeanDescriptor.getDisplayName())) { 37 return analyzerBeanDescriptor; 38 } 39 } 40 return null; 41 } 42 43 @Override 44 public TransformerBeanDescriptor<?> getTransformerBeanDescriptorByDisplayName( 45 String name) { 46 Collection<TransformerBeanDescriptor<?>> transformerBeanDescriptors = getTransformerBeanDescriptors(); 47 for (TransformerBeanDescriptor<?> transformerBeanDescriptor : transformerBeanDescriptors) { 48 if (name.equals(transformerBeanDescriptor.getDisplayName())) { 49 return transformerBeanDescriptor; 50 } 51 } 52 return null; 53 } 30 54 31 55 public ClasspathScanDescriptorProvider scanPackage(String packageName, … … 79 103 .get(analyzerClass); 80 104 if (descriptor == null) { 81 descriptor = AnnotationBasedAnalyzerBeanDescriptor .create(82 analyzerClass);105 descriptor = AnnotationBasedAnalyzerBeanDescriptor 106 .create(analyzerClass); 83 107 _analyzerBeanDescriptors.put(analyzerClass, descriptor); 84 108 } … … 91 115 .get(transformerClass); 92 116 if (descriptor == null) { 93 descriptor = AnnotationBasedTransformerBeanDescriptor .create(94 transformerClass);117 descriptor = AnnotationBasedTransformerBeanDescriptor 118 .create(transformerClass); 95 119 _transformerBeanDescriptors.put(transformerClass, 96 120 descriptor); -
AnalyzerBeans/trunk/src/main/java/org/eobjects/analyzer/descriptors/DescriptorProvider.java
r975 r978 19 19 Class<A> analyzerBeanClass); 20 20 21 public AnalyzerBeanDescriptor<?> getAnalyzerBeanDescriptorByDisplayName( 22 String name); 23 21 24 public Collection<TransformerBeanDescriptor<?>> getTransformerBeanDescriptors(); 22 25 23 26 public <T extends Transformer<?>> TransformerBeanDescriptor<T> getTransformerBeanDescriptorForClass( 24 27 Class<T> transformerBeanClass); 28 29 public TransformerBeanDescriptor<?> getTransformerBeanDescriptorByDisplayName( 30 String name); 25 31 26 32 public Collection<RendererBeanDescriptor> getRendererBeanDescriptors(); -
AnalyzerBeans/trunk/src/main/java/org/eobjects/analyzer/descriptors/LazyDescriptorProvider.java
r975 r978 23 23 .get(analyzerBeanClass); 24 24 if (descriptor == null) { 25 descriptor = AnnotationBasedAnalyzerBeanDescriptor .create(26 analyzerBeanClass);25 descriptor = AnnotationBasedAnalyzerBeanDescriptor 26 .create(analyzerBeanClass); 27 27 _analyzerBeanDescriptors.put(analyzerBeanClass, descriptor); 28 28 } … … 42 42 } 43 43 44 @Override 45 public AnalyzerBeanDescriptor<?> getAnalyzerBeanDescriptorByDisplayName( 46 String name) { 47 Collection<AnalyzerBeanDescriptor<?>> analyzerBeanDescriptors = getAnalyzerBeanDescriptors(); 48 for (AnalyzerBeanDescriptor<?> analyzerBeanDescriptor : analyzerBeanDescriptors) { 49 if (name.equals(analyzerBeanDescriptor.getDisplayName())) { 50 return analyzerBeanDescriptor; 51 } 52 } 53 return null; 54 } 55 56 @Override 57 public TransformerBeanDescriptor<?> getTransformerBeanDescriptorByDisplayName( 58 String name) { 59 Collection<TransformerBeanDescriptor<?>> transformerBeanDescriptors = getTransformerBeanDescriptors(); 60 for (TransformerBeanDescriptor<?> transformerBeanDescriptor : transformerBeanDescriptors) { 61 if (name.equals(transformerBeanDescriptor.getDisplayName())) { 62 return transformerBeanDescriptor; 63 } 64 } 65 return null; 66 } 67 44 68 @SuppressWarnings("unchecked") 45 69 @Override … … 49 73 .get(transformerBeanClass); 50 74 if (descriptor == null) { 51 descriptor = AnnotationBasedTransformerBeanDescriptor .create(52 transformerBeanClass);75 descriptor = AnnotationBasedTransformerBeanDescriptor 76 .create(transformerBeanClass); 53 77 _transformerBeanDescriptors.put(transformerBeanClass, descriptor); 54 78 } -
AnalyzerBeans/trunk/src/main/java/org/eobjects/analyzer/descriptors/SimpleDescriptorProvider.java
r975 r978 170 170 } 171 171 } 172 173 @Override 174 public AnalyzerBeanDescriptor<?> getAnalyzerBeanDescriptorByDisplayName( 175 String name) { 176 Collection<AnalyzerBeanDescriptor<?>> analyzerBeanDescriptors = getAnalyzerBeanDescriptors(); 177 for (AnalyzerBeanDescriptor<?> analyzerBeanDescriptor : analyzerBeanDescriptors) { 178 if (name.equals(analyzerBeanDescriptor.getDisplayName())) { 179 return analyzerBeanDescriptor; 180 } 181 } 182 return null; 183 } 184 185 @Override 186 public TransformerBeanDescriptor<?> getTransformerBeanDescriptorByDisplayName( 187 String name) { 188 Collection<TransformerBeanDescriptor<?>> transformerBeanDescriptors = getTransformerBeanDescriptors(); 189 for (TransformerBeanDescriptor<?> transformerBeanDescriptor : transformerBeanDescriptors) { 190 if (name.equals(transformerBeanDescriptor.getDisplayName())) { 191 return transformerBeanDescriptor; 192 } 193 } 194 return null; 195 } 172 196 } -
AnalyzerBeans/trunk/src/main/java/org/eobjects/analyzer/job/AnalysisJobBuilder.java
r975 r978 7 7 import java.util.List; 8 8 9 import org.eobjects.analyzer.beans.ExploringAnalyzer; 9 10 import org.eobjects.analyzer.beans.RowProcessingAnalyzer; 10 11 import org.eobjects.analyzer.beans.Transformer; … … 26 27 private List<MetaModelInputColumn> _sourceColumns = new ArrayList<MetaModelInputColumn>(); 27 28 private List<TransformerJobBuilder<?>> _transformerJobBuilders = new ArrayList<TransformerJobBuilder<?>>(); 28 private List< RowProcessingAnalyzerJobBuilder<?>> _analyzerJobBuilders = new ArrayList<RowProcessingAnalyzerJobBuilder<?>>();29 private List<AnalyzerJobBuilder<?>> _analyzerJobBuilders = new ArrayList<AnalyzerJobBuilder<?>>(); 29 30 private IdGenerator transformedColumnIdGenerator = new PrefixedIdGenerator( 30 31 "trans"); … … 139 140 } 140 141 141 public List< RowProcessingAnalyzerJobBuilder<?>> getAnalyzerJobBuilders() {142 public List<AnalyzerJobBuilder<?>> getAnalyzerJobBuilders() { 142 143 return Collections.unmodifiableList(_analyzerJobBuilders); 143 144 } 144 145 145 public <A extends RowProcessingAnalyzer<?>> RowProcessingAnalyzerJobBuilder<A> addAnalyzer( 146 public <A extends ExploringAnalyzer<?>> ExploringAnalyzerJobBuilder<A> addExploringAnalyzer( 147 Class<A> analyzerClass) { 148 AnalyzerBeanDescriptor<A> descriptor = _configuration 149 .getDescriptorProvider().getAnalyzerBeanDescriptorForClass( 150 analyzerClass); 151 if (descriptor == null) { 152 throw new IllegalArgumentException("No descriptor found for: " 153 + analyzerClass); 154 } 155 ExploringAnalyzerJobBuilder<A> analyzerJobBuilder = new ExploringAnalyzerJobBuilder<A>( 156 descriptor); 157 _analyzerJobBuilders.add(analyzerJobBuilder); 158 return analyzerJobBuilder; 159 } 160 161 public <A extends RowProcessingAnalyzer<?>> RowProcessingAnalyzerJobBuilder<A> addRowProcessingAnalyzer( 146 162 Class<A> analyzerClass) { 147 163 AnalyzerBeanDescriptor<A> descriptor = _configuration … … 212 228 } 213 229 214 for ( RowProcessingAnalyzerJobBuilder<?> ajb : _analyzerJobBuilders) {230 for (AnalyzerJobBuilder<?> ajb : _analyzerJobBuilders) { 215 231 if (!ajb.isConfigured()) { 216 232 return false; … … 240 256 241 257 Collection<AnalyzerJob> analyzerJobs = new LinkedList<AnalyzerJob>(); 242 for ( RowProcessingAnalyzerJobBuilder<?> ajb : _analyzerJobBuilders) {258 for (AnalyzerJobBuilder<?> ajb : _analyzerJobBuilders) { 243 259 try { 244 260 AnalyzerJob analyzerJob = ajb.toAnalyzerJob(); -
AnalyzerBeans/trunk/src/main/java/org/eobjects/analyzer/job/ExploringAnalyzerJobBuilder.java
r975 r978 6 6 public class ExploringAnalyzerJobBuilder<A extends ExploringAnalyzer<?>> 7 7 extends 8 AbstractBeanJobBuilder<AnalyzerBeanDescriptor<A>, A, ExploringAnalyzerJobBuilder<A>> { 8 AbstractBeanJobBuilder<AnalyzerBeanDescriptor<A>, A, ExploringAnalyzerJobBuilder<A>> 9 implements AnalyzerJobBuilder<A> { 9 10 10 11 public ExploringAnalyzerJobBuilder(AnalyzerBeanDescriptor<A> descriptor) { … … 12 13 } 13 14 15 @Override 14 16 public AnalyzerJob toAnalyzerJob() throws IllegalStateException { 15 17 if (!isConfigured()) { -
AnalyzerBeans/trunk/src/main/java/org/eobjects/analyzer/job/RowProcessingAnalyzerJobBuilder.java
r975 r978 6 6 public class RowProcessingAnalyzerJobBuilder<A extends RowProcessingAnalyzer<?>> 7 7 extends 8 AbstractBeanWithInputColumnsBuilder<AnalyzerBeanDescriptor<A>, A, RowProcessingAnalyzerJobBuilder<A>> { 8 AbstractBeanWithInputColumnsBuilder<AnalyzerBeanDescriptor<A>, A, RowProcessingAnalyzerJobBuilder<A>> 9 implements AnalyzerJobBuilder<A> { 9 10 10 11 public RowProcessingAnalyzerJobBuilder(AnalyzerBeanDescriptor<A> descriptor) { … … 12 13 } 13 14 15 @Override 14 16 public AnalyzerJob toAnalyzerJob() throws IllegalStateException { 15 17 if (!isConfigured()) { -
AnalyzerBeans/trunk/src/main/java/org/eobjects/analyzer/util/SchemaNavigator.java
r967 r978 14 14 } 15 15 16 public Schema convertToSchema(String schemaName) { 17 return dataContext.getSchemaByName(schemaName); 18 } 19 16 20 public Schema[] convertToSchemas(String[] schemaNames) { 17 21 Schema[] result = new Schema[schemaNames.length]; 18 22 for (int i = 0; i < result.length; i++) { 19 result[i] = dataContext.getSchemaByName(schemaNames[i]);23 result[i] = convertToSchema(schemaNames[i]); 20 24 } 21 25 return result; … … 25 29 Table[] result = new Table[tableNames.length]; 26 30 for (int i = 0; i < result.length; i++) { 27 result[i] = dataContext.getTableByQualifiedLabel(tableNames[i]);31 result[i] = convertToTable(tableNames[i]); 28 32 } 29 33 return result; 34 } 35 36 public Table convertToTable(String tableName) { 37 return dataContext.getTableByQualifiedLabel(tableName); 30 38 } 31 39 … … 33 41 Column[] result = new Column[columnNames.length]; 34 42 for (int i = 0; i < result.length; i++) { 35 result[i] = dataContext.getColumnByQualifiedLabel(columnNames[i]);43 result[i] = convertToColumn(columnNames[i]); 36 44 } 37 45 return result; 38 46 } 47 48 public Column convertToColumn(String columnName) { 49 return dataContext.getColumnByQualifiedLabel(columnName); 50 } 39 51 } -
AnalyzerBeans/trunk/src/test/java/org/eobjects/analyzer/job/AnalysisJobBuilderTest.java
r975 r978 57 57 public void testToString() throws Exception { 58 58 RowProcessingAnalyzerJobBuilder<StringAnalyzer> ajb = analysisJobBuilder 59 .add Analyzer(StringAnalyzer.class);59 .addRowProcessingAnalyzer(StringAnalyzer.class); 60 60 TransformerJobBuilder<ConvertToStringTransformer> tjb = analysisJobBuilder 61 61 .addTransformer(ConvertToStringTransformer.class); … … 98 98 99 99 RowProcessingAnalyzerJobBuilder<StringAnalyzer> analyzerJobBuilder = analysisJobBuilder 100 .add Analyzer(StringAnalyzer.class);100 .addRowProcessingAnalyzer(StringAnalyzer.class); 101 101 102 102 Collection<InputColumn<?>> stringInputColumns = analysisJobBuilder -
AnalyzerBeans/trunk/src/test/java/org/eobjects/analyzer/job/runner/RowProcessingPublisherTest.java
r975 r978 53 53 .addInputColumn(tjb2.getOutputColumns().get(0)); 54 54 55 ajb.add Analyzer(StringAnalyzer.class).addInputColumn(55 ajb.addRowProcessingAnalyzer(StringAnalyzer.class).addInputColumn( 56 56 ajb.getSourceColumns().get(0)); 57 ajb.add Analyzer(StringAnalyzer.class).addInputColumn(57 ajb.addRowProcessingAnalyzer(StringAnalyzer.class).addInputColumn( 58 58 tjb3.getOutputColumns().get(0)); 59 59 -
AnalyzerBeans/trunk/src/test/java/org/eobjects/analyzer/test/TestHelper.java
r971 r978 29 29 "org.eobjects.analyzer.renderer", true); 30 30 31 public static AnalyzerBeansConfiguration createAnalyzerBeansConfiguration( 32 Datastore datastore) { 33 TaskRunner taskRunner = new SingleThreadedTaskRunner(); 34 CollectionProvider collectionProvider = new BerkeleyDbCollectionProvider(); 35 36 List<Datastore> datastores = new LinkedList<Datastore>(); 37 datastores.add(datastore); 38 39 return new AnalyzerBeansConfigurationImpl(new DatastoreCatalogImpl( 40 datastores), createReferenceDataCatalog(), descriptorProvider, 41 taskRunner, collectionProvider); 42 } 43 31 44 public static AnalyzerBeansConfiguration createAnalyzerBeansConfiguration() { 32 45 TaskRunner taskRunner = new SingleThreadedTaskRunner(); -
AnalyzerBeans/trunk/src/test/java/org/eobjects/analyzer/test/full/scenarios/NameAndEmailPartEqualityTest.java
r975 r978 104 104 assertNotNull(usernameColumn); 105 105 106 assertTrue(analysisJobBuilder.add Analyzer(StringAnalyzer.class)106 assertTrue(analysisJobBuilder.addRowProcessingAnalyzer(StringAnalyzer.class) 107 107 .addInputColumns(nameColumns) 108 108 .addInputColumns(emailTransformerJobBuilder.getOutputColumns()) … … 111 111 for (InputColumn<?> inputColumn : nameColumns) { 112 112 RowProcessingAnalyzerJobBuilder<ValueDistributionAnalyzer> analyzerJobBuilder = analysisJobBuilder 113 .add Analyzer(ValueDistributionAnalyzer.class);113 .addRowProcessingAnalyzer(ValueDistributionAnalyzer.class); 114 114 analyzerJobBuilder.addInputColumn(inputColumn); 115 115 analyzerJobBuilder.setConfiguredProperty("Record unique values", … … 123 123 124 124 RowProcessingAnalyzerJobBuilder<EqualityAnalyzer> equalsAnalyzerJobBuilder = analysisJobBuilder 125 .add Analyzer(EqualityAnalyzer.class);125 .addRowProcessingAnalyzer(EqualityAnalyzer.class); 126 126 equalsAnalyzerJobBuilder.addInputColumns( 127 127 nameTransformerJobBuilder.getOutputColumnByName("Firstname"), -
AnalyzerBeans/trunk/src/test/java/org/eobjects/analyzer/test/full/scenarios/TokenizerAndValueDistributionTest.java
r975 r978 85 85 for (InputColumn<?> inputColumn : transformerOutput) { 86 86 RowProcessingAnalyzerJobBuilder<ValueDistributionAnalyzer> valueDistribuitionJobBuilder = analysisJobBuilder 87 .add Analyzer(ValueDistributionAnalyzer.class);87 .addRowProcessingAnalyzer(ValueDistributionAnalyzer.class); 88 88 valueDistribuitionJobBuilder.addInputColumn(inputColumn); 89 89 valueDistribuitionJobBuilder.setConfiguredProperty( -
AnalyzerBeans/trunk/src/test/java/org/eobjects/analyzer/test/full/scenarios/ValueDistributionAndStringAnalysisTest.java
r975 r978 73 73 for (InputColumn<?> inputColumn : analysisJobBuilder.getSourceColumns()) { 74 74 RowProcessingAnalyzerJobBuilder<ValueDistributionAnalyzer> valueDistribuitionJobBuilder = analysisJobBuilder 75 .add Analyzer(ValueDistributionAnalyzer.class);75 .addRowProcessingAnalyzer(ValueDistributionAnalyzer.class); 76 76 valueDistribuitionJobBuilder.addInputColumn(inputColumn); 77 77 valueDistribuitionJobBuilder.setConfiguredProperty( … … 86 86 87 87 RowProcessingAnalyzerJobBuilder<StringAnalyzer> stringAnalyzerJob = analysisJobBuilder 88 .add Analyzer(StringAnalyzer.class);88 .addRowProcessingAnalyzer(StringAnalyzer.class); 89 89 stringAnalyzerJob.addInputColumns(analysisJobBuilder 90 90 .getAvailableInputColumns(DataTypeFamily.STRING));
Note: See TracChangeset
for help on using the changeset viewer.
