private static void buildExtensionMetadataProperties(ExecutionFactory factory, VDBTranslatorMetaData metadata, ExtendedPropertyMetadataList propertyDefns, Object instance) { Class clazz = factory.getClass(); readExtensionPropertyMetadataAsExtendedMetadataProperties(propertyDefns, clazz); MetadataProcessor metadataProcessor = factory.getMetadataProcessor(); if (metadataProcessor != null) { clazz = metadataProcessor.getClass(); readExtensionPropertyMetadataAsExtendedMetadataProperties(propertyDefns, clazz); } }
private static void buildTranslatorProperties(ExecutionFactory factory, VDBTranslatorMetaData metadata, ExtendedPropertyMetadataList propertyDefns, Object instance) { Class clazz = factory.getClass(); readTranslatorPropertyAsExtendedMetadataProperties(metadata, propertyDefns, instance, clazz); MetadataProcessor metadataProcessor = factory.getMetadataProcessor(); if (metadataProcessor != null) { clazz = metadataProcessor.getClass(); readTranslatorPropertyAsExtendedMetadataProperties(metadata, propertyDefns, metadataProcessor, clazz); readTranslatorPropertyAsExtendedMetadataProperties(metadata, propertyDefns, new MetadataFactory(), MetadataFactory.class); } }
/** * Implement to provide metadata to the metadata for use by the engine. This is the * primary method of creating metadata for dynamic VDBs. * @param metadataFactory * @param conn may be null if the source is not required * @throws TranslatorException to indicate a recoverable error, otherwise a RuntimeException * @see #isSourceRequiredForMetadata() */ public void getMetadata(MetadataFactory metadataFactory, C conn) throws TranslatorException { MetadataProcessor mp = getMetadataProcessor(); if (mp != null) { PropertiesUtils.setBeanProperties(mp, metadataFactory.getModelProperties(), "importer"); //$NON-NLS-1$ mp.process(metadataFactory, conn); } }