From a0b6fbd2edaa59e5962a15882e4251d4b94f9a82 Mon Sep 17 00:00:00 2001 From: john Date: Wed, 25 Sep 2002 21:15:26 +0000 Subject: [PATCH] added PDFGenerate, which wraps up PDFGeneratingProducerNode with an XML interface --- .../reader/SupplementalProducerNodeBuilders.java | 32 ++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/source/mircoders/producer/reader/SupplementalProducerNodeBuilders.java b/source/mircoders/producer/reader/SupplementalProducerNodeBuilders.java index 6e7a60b5..2630d0d0 100755 --- a/source/mircoders/producer/reader/SupplementalProducerNodeBuilders.java +++ b/source/mircoders/producer/reader/SupplementalProducerNodeBuilders.java @@ -45,6 +45,7 @@ public class SupplementalProducerNodeBuilders { aBuilderLibrary.registerBuilder("ModifyContent", ContentModifyingProducerNodeBuilder.class); aBuilderLibrary.registerBuilder("MarkContent", ContentMartkingProducerNodeBuilder.class); aBuilderLibrary.registerBuilder("PDFPreFormat", PDFPreFormattingProducerNodeBuilder.class); + aBuilderLibrary.registerBuilder("PDFGenerate", PDFGeneratingProducerNodeBuilder.class); } public static class ContentMartkingProducerNodeBuilder extends DefaultProducerNodeBuilders.AbstractProducerNodeBuilder { @@ -140,6 +141,37 @@ public class SupplementalProducerNodeBuilders { }; } +public static class PDFGeneratingProducerNodeBuilder extends DefaultProducerNodeBuilders.AbstractProducerNodeBuilder { + private final static String MARKER_KEY_ATTRIBUTE = DefaultProducerNodeBuilders.KEY_ATTRIBUTE; + private final static String PDF_GENERATOR_ATTRIBUTE = "generator"; + private final static String PDF_DESTINATION_ATTRIBUTE = "destination"; + private final static String PDF_STYLESHEET_ATTRIBUTE = "stylesheet"; + private final static String[] MARKER_REQUIRED_ATTRIBUTES = {PDF_GENERATOR_ATTRIBUTE,PDF_DESTINATION_ATTRIBUTE,PDF_STYLESHEET_ATTRIBUTE }; + private final static String[] MARKER_OPTIONAL_ATTRIBUTES = {}; + private final static String[] MARKER_SUBNODES = {}; + + private String generator; + private String destination; + private String stylesheet; + + + public PDFGeneratingProducerNodeBuilder() { + super(MARKER_SUBNODES); + } + + public void setAttributes(Map anAttributes) throws ProducerConfigExc { + ReaderTool.checkAttributes(anAttributes, MARKER_REQUIRED_ATTRIBUTES, MARKER_OPTIONAL_ATTRIBUTES); + + generator = (String) anAttributes.get(PDF_GENERATOR_ATTRIBUTE); + destination = (String) anAttributes.get(PDF_DESTINATION_ATTRIBUTE); + stylesheet = (String) anAttributes.get(PDF_STYLESHEET_ATTRIBUTE); + }; + + public ProducerNode constructNode() { + return new PDFGeneratingProducerNode(generator,destination,stylesheet); + }; + } + /* TODO: -- 2.11.0