From: john Date: Thu, 21 Nov 2002 21:09:14 +0000 (+0000) Subject: added definitions for the IndexingProducerNodeBuilder X-Git-Tag: BEFORE_MERGE_1_1~471 X-Git-Url: http://erislabs.org.uk/gitweb/?a=commitdiff_plain;h=ad5280ff720862e18dd88a807faabd152251a8f7;p=mir.git added definitions for the IndexingProducerNodeBuilder --- diff --git a/source/mircoders/producer/reader/SupplementalProducerNodeBuilders.java b/source/mircoders/producer/reader/SupplementalProducerNodeBuilders.java index ff7d0f15..bc6ef4c1 100755 --- a/source/mircoders/producer/reader/SupplementalProducerNodeBuilders.java +++ b/source/mircoders/producer/reader/SupplementalProducerNodeBuilders.java @@ -46,7 +46,7 @@ public class SupplementalProducerNodeBuilders { aBuilderLibrary.registerBuilder("MarkContent", ContentMarkingProducerNodeBuilder.class); aBuilderLibrary.registerBuilder("GenerateMedia", MediaGeneratingProducerNodeBuilder.class); - + aBuilderLibrary.registerBuilder("IndexContent",ContentIndexingProducerNodeBuilder.class); aBuilderLibrary.registerBuilder("PDFPreFormat", PDFPreFormattingProducerNodeBuilder.class); aBuilderLibrary.registerBuilder("PDFGenerate", PDFGeneratingProducerNodeBuilder.class); } @@ -74,6 +74,32 @@ public class SupplementalProducerNodeBuilders { return new ContentMarkingProducerNode(key); }; } + private final static String INDEXER_KEY_ATTRIBUTE = DefaultProducerNodeBuilders.KEY_ATTRIBUTE; + private final static String INDEXER_INDEX_ATTRIBUTE = "pathToIndex"; + private final static String[] INDEXER_REQUIRED_ATTRIBUTES = { INDEXER_KEY_ATTRIBUTE, INDEXER_INDEX_ATTRIBUTE }; + private final static String[] INDEXER_OPTIONAL_ATTRIBUTES = {}; + private final static String[] INDEXER_SUBNODES = {}; + + public static class ContentIndexingProducerNodeBuilder extends DefaultProducerNodeBuilders.AbstractProducerNodeBuilder { + + private String key; + private String pathToIndex; + + public ContentIndexingProducerNodeBuilder() { + super(INDEXER_SUBNODES); + } + + public void setAttributes(Map anAttributes) throws ProducerConfigExc { + ReaderTool.checkAttributes(anAttributes, INDEXER_REQUIRED_ATTRIBUTES, INDEXER_OPTIONAL_ATTRIBUTES); + + key = (String) anAttributes.get(INDEXER_KEY_ATTRIBUTE); + pathToIndex = (String) anAttributes.get(INDEXER_INDEX_ATTRIBUTE); + }; + + public ProducerNode constructNode() { + return new IndexingProducerNode(key,pathToIndex); + }; + } private final static String CONTENT_MODIFIER_KEY_ATTRIBUTE = DefaultProducerNodeBuilders.KEY_ATTRIBUTE;