Example usage for org.apache.commons.digester3 Digester addBeanPropertySetter

List of usage examples for org.apache.commons.digester3 Digester addBeanPropertySetter

Introduction

In this page you can find the example usage for org.apache.commons.digester3 Digester addBeanPropertySetter.

Prototype

public void addBeanPropertySetter(String pattern, String propertyName) 

Source Link

Document

Add a "bean property setter" rule for the specified parameters.

Usage

From source file:org.gbif.metadata.eml.EmlFactory.java

/**
 * Add rules for parsing the project details.
 *
 * @param digester to add the rules to/*from  w ww .  j a  v  a 2s  . co m*/
 */
private static void addProjectRules(Digester digester) {
    digester.addObjectCreate("eml/dataset/project", Project.class);
    digester.addCallMethod("eml/dataset/project", "setIdentifier", 1);
    digester.addCallParam("eml/dataset/project", 0, "id");
    digester.addBeanPropertySetter("eml/dataset/project/title", "title");
    addAgentRules(digester, "eml/dataset/project/personnel", "addProjectPersonnel");
    digester.addBeanPropertySetter("eml/dataset/project/abstract/para", "description");
    digester.addBeanPropertySetter("eml/dataset/project/funding/para", "funding");
    addStudyAreaDescriptionRules(digester);
    digester.addBeanPropertySetter("eml/dataset/project/designDescription/description/para",
            "designDescription");
    digester.addSetNext("eml/dataset/project", "setProject");
}

From source file:org.gbif.metadata.eml.EmlFactory.java

/**
 * Adds rules for the study area description: <studyAreaDescription> <descriptor name="generic"
 * citableClassificationSystem="false"> <descriptorValue>Turkish Mountains</descriptorValue> </descriptor>
 * </studyAreaDescription>//from   w w  w  . ja  va 2 s .  c om
 *
 * @param digester To add the rules to
 */
private static void addStudyAreaDescriptionRules(Digester digester) {
    digester.addObjectCreate("eml/dataset/project/studyAreaDescription", StudyAreaDescription.class);

    // get the descriptor@name attribute and set it
    digester.addCallMethod("eml/dataset/project/studyAreaDescription/descriptor", "setName", 1);
    digester.addCallParam("eml/dataset/project/studyAreaDescription/descriptor", 0, "name");

    // get the descriptor@citableClassificationSystem and set it
    digester.addCallMethod("eml/dataset/project/studyAreaDescription/descriptor",
            "setCitableClassificationSystem", 1);
    digester.addCallParam("eml/dataset/project/studyAreaDescription/descriptor", 0,
            "citableClassificationSystem");

    // set the value of the StudyAreaDescription
    digester.addBeanPropertySetter("eml/dataset/project/studyAreaDescription/descriptor/descriptorValue",
            "descriptorValue");

    // add the StudyAreaDescription to the project
    digester.addSetNext("eml/dataset/project/studyAreaDescription", "setStudyAreaDescription");
}

From source file:org.gbif.metadata.eml.EmlFactory.java

/**
 * Add rules to extract the physicalData.
 *
 * @param digester to add the rules to//  ww  w . j av  a  2 s  .c  o  m
 */
private static void addPhysicalDataRules(Digester digester) {
    digester.addObjectCreate("eml/additionalMetadata/metadata/gbif/physical", PhysicalData.class);
    digester.addBeanPropertySetter("eml/additionalMetadata/metadata/gbif/physical/objectName", "name");
    digester.addBeanPropertySetter("eml/additionalMetadata/metadata/gbif/physical/characterEncoding",
            "charset");
    digester.addBeanPropertySetter(
            "eml/additionalMetadata/metadata/gbif/physical/dataFormat/externallyDefinedFormat/formatName",
            "format");
    digester.addBeanPropertySetter(
            "eml/additionalMetadata/metadata/gbif/physical/dataFormat/externallyDefinedFormat/formatVersion",
            "formatVersion");
    digester.addBeanPropertySetter("eml/additionalMetadata/metadata/gbif/physical/distribution/online/url",
            "distributionUrl");
    digester.addSetNext("eml/additionalMetadata/metadata/gbif/physical", "addPhysicalData"); // add the PhysicalData to the
    // list in EML
}

From source file:org.gbif.metadata.eml.EmlFactory.java

/**
 * Add rules to extract the collection./*from w ww.  java  2s  . c o  m*/
 *
 * @param digester to add the rules to
 */
private static void addCollectionRules(Digester digester) {
    digester.addObjectCreate("eml/additionalMetadata/metadata/gbif/collection", Collection.class);
    digester.addBeanPropertySetter("eml/additionalMetadata/metadata/gbif/collection/parentCollectionIdentifier",
            "parentCollectionId");
    digester.addBeanPropertySetter("eml/additionalMetadata/metadata/gbif/collection/collectionIdentifier",
            "collectionId");
    digester.addBeanPropertySetter("eml/additionalMetadata/metadata/gbif/collection/collectionName",
            "collectionName");
    // add the Collection to the list in EML
    digester.addSetNext("eml/additionalMetadata/metadata/gbif/collection", "addCollection");
}

From source file:org.gbif.metadata.eml.EmlFactory.java

/**
 * Add rules to extract the jgtiCuratorialUnit.
 *
 * @param digester to add the rules to/*from  w  ww .  j  ava 2 s .c o m*/
 */
private static void addJGTICuratorialIUnit(Digester digester) {
    digester.addObjectCreate("eml/additionalMetadata/metadata/gbif/jgtiCuratorialUnit",
            JGTICuratorialUnit.class);
    digester.addBeanPropertySetter("eml/additionalMetadata/metadata/gbif/jgtiCuratorialUnit/jgtiUnitType",
            "unitType");
    digester.addBeanPropertySetter(
            "eml/additionalMetadata/metadata/gbif/jgtiCuratorialUnit/jgtiUnitRange/beginRange", "rangeStart");
    digester.addBeanPropertySetter(
            "eml/additionalMetadata/metadata/gbif/jgtiCuratorialUnit/jgtiUnitRange/endRange", "rangeEnd");
    digester.addBeanPropertySetter("eml/additionalMetadata/metadata/gbif/jgtiCuratorialUnit/jgtiUnits",
            "rangeMean");
    // sets attributes of jgtiUnits (uncertaintyMeasure)
    digester.addSetProperties("eml/additionalMetadata/metadata/gbif/jgtiCuratorialUnit/jgtiUnits");
    digester.addSetNext("eml/additionalMetadata/metadata/gbif/jgtiCuratorialUnit", "addJgtiCuratorialUnit"); // add the
    // JGTICuratorialIUnit to the list in
    // EML
}

From source file:org.gbif.registry.metadata.parse.DublinCoreRuleSet.java

public void addRuleInstances(Digester digester) {
    setupTypeConverters();/*from   w ww  .j  a  v  a2 s. com*/

    // add the rules
    digester.addCallMethod("*/protocol", "throwIllegalArgumentException");
    digester.addBeanPropertySetter("*/title", "title");
    digester.addCallMethod("*/abstract", "addAbstract", 0);
    digester.addBeanPropertySetter("*/description", "description");
    digester.addCallMethod("*/subject", "addSubjects", 0);
    digester.addBeanPropertySetter("*/language", "dataLanguage");
    digester.addBeanPropertySetter("*/source", "homepage");
    digester.addCallMethod("*/isFormatOf", "addDataUrl", 0, new Class[] { URI.class });
    digester.addCallMethod("*/creator", "addCreator", 0);
    digester.addCallMethod("*/created", "setPubDateAsString", 0);
    digester.addBeanPropertySetter("*/rights", "rights");
    digester.addCallMethod("*/license", "addLicense", 0);
    digester.addCallMethod("*/bibliographicCitation", "addBibCitation", 0);
    digester.addCallMethod("*/identifier", "addIdentifier", 0);
}

From source file:org.quickserver.util.xmlreader.ConfigReader.java

/**
 * Parses XML config of QuickServer of version 1.3 and above
 * @since 1.4//from w  w  w .j a va2 s.  c  om
 */
public static QuickServerConfig read(InputStream input, String config_file_location) throws Exception {
    Digester digester = new Digester();
    digester.setValidating(false);

    //digester.setNamespaceAware(true);
    //String xsd = "" + new File("quickserver_config.xsd").toURI();
    //digester.setSchema(xsd);
    String mainTag = "quickserver";
    String subTag = "";

    digester.addObjectCreate(mainTag, QuickServerConfig.class);
    digester.addBeanPropertySetter(mainTag + "/name", "name");
    digester.addBeanPropertySetter(mainTag + "/server-banner", "serverBanner");
    digester.addBeanPropertySetter(mainTag + "/port", "port");
    digester.addBeanPropertySetter(mainTag + "/bind-address", "bindAddr");
    //<server-mode>
    String curTag = mainTag + "/server-mode";
    digester.addObjectCreate(curTag, ServerMode.class);
    digester.addBeanPropertySetter(curTag + "/blocking", "blocking");
    digester.addSetNext(curTag, "setServerMode");
    //</server-mode>
    digester.addBeanPropertySetter(mainTag + "/client-event-handler", "clientEventHandler");//v1.4.6
    digester.addBeanPropertySetter(mainTag + "/client-command-handler", "clientCommandHandler");
    digester.addBeanPropertySetter(mainTag + "/client-object-handler", "clientObjectHandler");
    digester.addBeanPropertySetter(mainTag + "/client-binary-handler", "clientBinaryHandler");//v1.4
    digester.addBeanPropertySetter(mainTag + "/client-write-handler", "clientWriteHandler");//v1.4.5
    digester.addBeanPropertySetter(mainTag + "/authenticator", "authenticator"); //v1.3
    digester.addBeanPropertySetter(mainTag + "/client-authentication-handler", "clientAuthenticationHandler"); //v1.4.6
    digester.addBeanPropertySetter(mainTag + "/client-data", "clientData");
    digester.addBeanPropertySetter(mainTag + "/client-extended-event-handler", "clientExtendedEventHandler");//v1.4.6
    digester.addBeanPropertySetter(mainTag + "/timeout", "timeout");
    digester.addBeanPropertySetter(mainTag + "/timeout-msg", "timeoutMsg");
    digester.addBeanPropertySetter(mainTag + "/max-auth-try", "maxAuthTry");
    digester.addBeanPropertySetter(mainTag + "/max-auth-try-msg", "maxAuthTryMsg");
    digester.addBeanPropertySetter(mainTag + "/max-connection", "maxConnection");
    digester.addBeanPropertySetter(mainTag + "/max-connection-msg", "maxConnectionMsg");
    digester.addBeanPropertySetter(mainTag + "/console-logging-level", "consoleLoggingLevel");
    digester.addBeanPropertySetter(mainTag + "/console-logging-formatter", "consoleLoggingFormatter");
    //<default-data-mode>
    curTag = mainTag + "/default-data-mode";
    digester.addObjectCreate(curTag, DefaultDataMode.class);
    digester.addBeanPropertySetter(curTag + "/data-type-in", "dataModeIn");
    digester.addBeanPropertySetter(curTag + "/data-type-out", "dataModeOut");
    digester.addSetNext(curTag, "setDefaultDataMode");
    //</default-data-mode>
    //<object-pool>
    curTag = mainTag + "/object-pool";
    digester.addObjectCreate(curTag, ObjectPoolConfig.class);
    digester.addBeanPropertySetter(curTag + "/max-active", "maxActive");
    digester.addBeanPropertySetter(curTag + "/max-idle", "maxIdle");
    digester.addBeanPropertySetter(curTag + "/init-size", "initSize");
    digester.addBeanPropertySetter(curTag + "/pool-manager", "poolManager");
    //<thread-object-pool>
    digester.addObjectCreate(curTag + "/thread-object-pool", ThreadObjectPoolConfig.class);
    digester.addBeanPropertySetter(curTag + "/thread-object-pool/max-active", "maxActive");
    digester.addBeanPropertySetter(curTag + "/thread-object-pool/max-idle", "maxIdle");
    digester.addBeanPropertySetter(curTag + "/thread-object-pool/init-size", "initSize");
    digester.addSetNext(curTag + "/thread-object-pool", "setThreadObjectPoolConfig");
    //</thread-object-pool>
    //<client-handler-object-pool>
    digester.addObjectCreate(curTag + "/client-handler-object-pool", ClientHandlerObjectPoolConfig.class);
    digester.addBeanPropertySetter(curTag + "/client-handler-object-pool/max-active", "maxActive");
    digester.addBeanPropertySetter(curTag + "/client-handler-object-pool/max-idle", "maxIdle");
    digester.addBeanPropertySetter(curTag + "/client-handler-object-pool/init-size", "initSize");
    digester.addSetNext(curTag + "/client-handler-object-pool", "setClientHandlerObjectPoolConfig");
    //</client-handler-object-pool>
    //<byte-buffer-object-pool>
    digester.addObjectCreate(curTag + "/byte-buffer-object-pool", ByteBufferObjectPoolConfig.class);
    digester.addBeanPropertySetter(curTag + "/byte-buffer-object-pool/max-active", "maxActive");
    digester.addBeanPropertySetter(curTag + "/byte-buffer-object-pool/max-idle", "maxIdle");
    digester.addBeanPropertySetter(curTag + "/byte-buffer-object-pool/init-size", "initSize");
    digester.addSetNext(curTag + "/byte-buffer-object-pool", "setByteBufferObjectPoolConfig");
    //</byte-buffer-object-pool>
    //<client-data-object-pool>
    digester.addObjectCreate(curTag + "/client-data-object-pool", ClientDataObjectPoolConfig.class);
    digester.addBeanPropertySetter(curTag + "/client-data-object-pool/max-active", "maxActive");
    digester.addBeanPropertySetter(curTag + "/client-data-object-pool/max-idle", "maxIdle");
    digester.addBeanPropertySetter(curTag + "/client-data-object-pool/init-size", "initSize");
    digester.addSetNext(curTag + "/client-data-object-pool", "setClientDataObjectPoolConfig");
    //</client-data-object-pool>
    digester.addSetNext(curTag, "setObjectPoolConfig");
    //</object-pool>
    //<communication-logging>
    digester.addBeanPropertySetter(mainTag + "/communication-logging/enable", "communicationLogging");
    //</communication-logging>
    digester.addBeanPropertySetter(mainTag + "/security-manager-class", "securityManagerClass");

    //<access-constraint>
    digester.addObjectCreate(mainTag + "/access-constraint", AccessConstraintConfig.class);
    //<ip-filter>
    digester.addObjectCreate(mainTag + "/access-constraint/ip-filter", IpFilterConfig.class);
    digester.addBeanPropertySetter(mainTag + "/access-constraint/ip-filter/enable", "enable");
    digester.addBeanPropertySetter(mainTag + "/access-constraint/ip-filter/allow-access", "allowAccess");
    //<ip-collection>
    digester.addCallMethod(mainTag + "/access-constraint/ip-filter/ip-collection/client-ip-address",
            "addClientIpAddress", 0);
    //<ip-collection>
    digester.addSetNext(mainTag + "/access-constraint/ip-filter", "setIpFilterConfig");
    //<ip-filter>
    digester.addSetNext(mainTag + "/access-constraint", "setAccessConstraintConfig");
    //</access-constraint>   

    //<application-jar-path>
    digester.addBeanPropertySetter(mainTag + "/application-jar-path", "applicationJarPath");

    //<server-hooks>
    digester.addObjectCreate(mainTag + "/server-hooks", ServerHooks.class);
    digester.addCallMethod(mainTag + "/server-hooks/class-name", "addClassName", 0);
    digester.addSetNext(mainTag + "/server-hooks", "setServerHooks");
    //</server-hooks>

    //<secure>
    curTag = mainTag + "/secure";
    digester.addObjectCreate(curTag, Secure.class);
    digester.addBeanPropertySetter(curTag + "/enable", "enable");
    digester.addBeanPropertySetter(curTag + "/load", "load");
    digester.addBeanPropertySetter(curTag + "/port", "port");
    digester.addBeanPropertySetter(curTag + "/protocol", "protocol");
    digester.addBeanPropertySetter(curTag + "/client-auth-enable", "clientAuthEnable");
    //<secure-store>
    digester.addObjectCreate(curTag + "/secure-store", SecureStore.class);
    digester.addBeanPropertySetter(curTag + "/secure-store/type", "type");
    digester.addBeanPropertySetter(curTag + "/secure-store/algorithm", "algorithm");
    digester.addBeanPropertySetter(curTag + "/secure-store/provider", "provider");
    //<key-store-info>
    digester.addObjectCreate(curTag + "/secure-store/key-store-info", KeyStoreInfo.class);
    digester.addBeanPropertySetter(curTag + "/secure-store/key-store-info/store-file", "storeFile");
    digester.addBeanPropertySetter(curTag + "/secure-store/key-store-info/store-password", "storePassword");
    digester.addBeanPropertySetter(curTag + "/secure-store/key-store-info/key-password", "keyPassword");
    digester.addSetNext(curTag + "/secure-store/key-store-info", "setKeyStoreInfo");
    //</key-store-info>
    //<trust-store-info>
    digester.addObjectCreate(curTag + "/secure-store/trust-store-info", TrustStoreInfo.class);
    digester.addBeanPropertySetter(curTag + "/secure-store/trust-store-info/store-file", "storeFile");
    digester.addBeanPropertySetter(curTag + "/secure-store/trust-store-info/store-password", "storePassword");
    digester.addBeanPropertySetter(curTag + "/secure-store/trust-store-info/type", "type");
    digester.addBeanPropertySetter(curTag + "/secure-store/trust-store-info/provider", "provider");
    digester.addSetNext(curTag + "/secure-store/trust-store-info", "setTrustStoreInfo");
    //</trust-store-info>
    digester.addBeanPropertySetter(curTag + "/secure-store/secure-store-manager", "secureStoreManager");
    digester.addSetNext(curTag + "/secure-store", "setSecureStore");
    //</secure-store>
    digester.addSetNext(curTag, "setSecure");
    //</secure>

    //<advanced-settings>
    curTag = mainTag + "/advanced-settings";
    digester.addObjectCreate(curTag, AdvancedSettings.class);
    digester.addBeanPropertySetter(curTag + "/charset", "charset");
    digester.addBeanPropertySetter(curTag + "/byte-buffer-size", "byteBufferSize");
    digester.addBeanPropertySetter(curTag + "/backlog", "backlog");
    digester.addBeanPropertySetter(curTag + "/use-direct-byte-buffer", "useDirectByteBuffer");
    digester.addBeanPropertySetter(curTag + "/socket-linger", "socketLinger");
    digester.addBeanPropertySetter(curTag + "/debug-non-blocking-mode", "debugNonBlockingMode");
    digester.addBeanPropertySetter(curTag + "/client-identifier", "clientIdentifier");
    digester.addBeanPropertySetter(curTag + "/qsobject-pool-maker", "qsObjectPoolMaker");
    digester.addBeanPropertySetter(curTag + "/max-threads-for-nio-write", "maxThreadsForNioWrite");

    digester.addBeanPropertySetter(curTag + "/performance-preferences-connection-time",
            "performancePreferencesConnectionTime");
    digester.addBeanPropertySetter(curTag + "/performance-preferences-latency",
            "performancePreferencesLatency");
    digester.addBeanPropertySetter(curTag + "/performance-preferences-bandwidth",
            "performancePreferencesBandwidth");

    digester.addBeanPropertySetter(curTag + "/client-socket-tcp-no-delay", "clientSocketTcpNoDelay");
    digester.addBeanPropertySetter(curTag + "/client-socket-traffic-class", "clientSocketTrafficClass");

    digester.addBeanPropertySetter(curTag + "/client-socket-receive-buffer-size",
            "clientSocketReceiveBufferSize");
    digester.addBeanPropertySetter(curTag + "/client-socket-send-buffer-size", "clientSocketSendBufferSize");

    digester.addSetNext(curTag, "setAdvancedSettings");
    //</advanced-settings>

    //<qsadmin-server>
    subTag = "qsadmin-server";
    curTag = mainTag + "/" + subTag;
    digester.addObjectCreate(curTag, QSAdminServerConfig.class);
    digester.addBeanPropertySetter(curTag + "/name", "name");
    digester.addBeanPropertySetter(curTag + "/server-banner", "serverBanner");
    digester.addBeanPropertySetter(curTag + "/port", "port");
    //<server-mode>
    digester.addObjectCreate(curTag + "/server-mode", ServerMode.class);
    digester.addBeanPropertySetter(curTag + "/server-mode/blocking", "blocking");
    digester.addSetNext(curTag + "/server-mode", "setServerMode");
    //</server-mode>
    digester.addBeanPropertySetter(curTag + "/client-event-handler", "clientEventHandler");
    digester.addBeanPropertySetter(curTag + "/client-command-handler", "clientCommandHandler");
    digester.addBeanPropertySetter(curTag + "/client-object-handler", "clientObjectHandler");
    digester.addBeanPropertySetter(curTag + "/client-binary-handler", "clientBinaryHandler");//v1.4
    digester.addBeanPropertySetter(curTag + "/client-write-handler", "clientWriteHandler");//v1.4.5
    digester.addBeanPropertySetter(curTag + "/authenticator", "authenticator"); //v1.3
    digester.addBeanPropertySetter(curTag + "/client-authentication-handler", "clientAuthenticationHandler"); //v1.4.6
    digester.addBeanPropertySetter(curTag + "/client-data", "clientData");
    digester.addBeanPropertySetter(curTag + "/client-extended-event-handler", "clientExtendedEventHandler");//v1.4.6
    digester.addBeanPropertySetter(curTag + "/timeout", "timeout");
    digester.addBeanPropertySetter(curTag + "/max-auth-try", "maxAuthTry");
    digester.addBeanPropertySetter(curTag + "/max-auth-try-msg", "maxAuthTryMsg");
    digester.addBeanPropertySetter(curTag + "/timeout-msg", "timeoutMsg");
    digester.addBeanPropertySetter(curTag + "/max-connection", "maxConnection");
    digester.addBeanPropertySetter(curTag + "/max-connection-msg", "maxConnectionMsg");
    digester.addBeanPropertySetter(curTag + "/bind-address", "bindAddr");
    digester.addBeanPropertySetter(curTag + "/client-object-handler", "clientObjectHandler");
    digester.addBeanPropertySetter(curTag + "/console-logging-level", "consoleLoggingLevel");
    digester.addBeanPropertySetter(curTag + "/console-logging-formatter", "consoleLoggingFormatter");
    //<default-data-mode>
    digester.addObjectCreate(curTag + "/default-data-mode", DefaultDataMode.class);
    digester.addBeanPropertySetter(curTag + "/default-data-mode/data-type-in", "dataModeIn");
    digester.addBeanPropertySetter(curTag + "/default-data-mode/data-type-out", "dataModeOut");
    digester.addSetNext(curTag + "/default-data-mode", "setDefaultDataMode");
    //</default-data-mode>
    //<object-pool>
    digester.addObjectCreate(curTag + "/object-pool", ObjectPoolConfig.class);
    digester.addBeanPropertySetter(curTag + "/object-pool/max-active", "maxActive");
    digester.addBeanPropertySetter(curTag + "/object-pool/max-idle", "maxIdle");
    digester.addBeanPropertySetter(curTag + "/object-pool/init-size", "initSize");
    digester.addBeanPropertySetter(curTag + "/object-pool/pool-manager", "poolManager");
    //<thread-object-pool>
    digester.addObjectCreate(curTag + "/object-pool/thread-object-pool", ThreadObjectPoolConfig.class);
    digester.addBeanPropertySetter(curTag + "/object-pool/thread-object-pool/max-active", "maxActive");
    digester.addBeanPropertySetter(curTag + "/object-pool/thread-object-pool/max-idle", "maxIdle");
    digester.addBeanPropertySetter(curTag + "/object-pool/thread-object-pool/init-size", "initSize");
    digester.addSetNext(curTag + "/object-pool/thread-object-pool", "setThreadObjectPoolConfig");
    //</thread-object-pool>
    //<client-handler-object-pool>
    digester.addObjectCreate(curTag + "/object-pool/client-handler-object-pool",
            ClientHandlerObjectPoolConfig.class);
    digester.addBeanPropertySetter(curTag + "/object-pool/client-handler-object-pool/max-active", "maxActive");
    digester.addBeanPropertySetter(curTag + "/object-pool/client-handler-object-pool/max-idle", "maxIdle");
    digester.addBeanPropertySetter(curTag + "/object-pool/client-handler-object-pool/init-size", "initSize");
    digester.addSetNext(curTag + "/object-pool/client-handler-object-pool", "setClientHandlerObjectPoolConfig");
    //</client-handler-object-pool>
    //<byte-buffer-object-pool>
    digester.addObjectCreate(curTag + "/object-pool/byte-buffer-object-pool", ByteBufferObjectPoolConfig.class);
    digester.addBeanPropertySetter(curTag + "/object-pool/byte-buffer-object-pool/max-active", "maxActive");
    digester.addBeanPropertySetter(curTag + "/object-pool/byte-buffer-object-pool/max-idle", "maxIdle");
    digester.addBeanPropertySetter(curTag + "/object-pool/byte-buffer-object-pool/init-size", "initSize");
    digester.addSetNext(curTag + "/object-pool/byte-buffer-object-pool", "setByteBufferObjectPoolConfig");
    //</byte-buffer-object-pool>
    //<client-data-object-pool>
    digester.addObjectCreate(curTag + "/object-pool/client-data-object-pool", ClientDataObjectPoolConfig.class);
    digester.addBeanPropertySetter(curTag + "/object-pool/client-data-object-pool/max-active", "maxActive");
    digester.addBeanPropertySetter(curTag + "/object-pool/client-data-object-pool/max-idle", "maxIdle");
    digester.addBeanPropertySetter(curTag + "/object-pool/client-data-object-pool/init-size", "initSize");
    digester.addSetNext(curTag + "/object-pool/client-data-object-pool", "setClientDataObjectPoolConfig");
    //</client-data-object-pool>
    digester.addSetNext(curTag + "/object-pool", "setObjectPoolConfig");
    //</object-pool>      
    //<command-shell>
    digester.addBeanPropertySetter(curTag + "/command-shell/enable", "commandShellEnable");
    digester.addBeanPropertySetter(curTag + "/command-shell/prompt-name", "commandShellPromptName");
    //</command-shell>
    //<communication-logging><enable>
    digester.addBeanPropertySetter(curTag + "/communication-logging/enable", "communicationLogging");
    //<access-constraint>
    digester.addObjectCreate(curTag + "/access-constraint", AccessConstraintConfig.class);
    //<ip-filter>
    digester.addObjectCreate(curTag + "/access-constraint/ip-filter", IpFilterConfig.class);
    digester.addBeanPropertySetter(curTag + "/access-constraint/ip-filter/enable", "enable");
    digester.addBeanPropertySetter(curTag + "/access-constraint/ip-filter/allow-access", "allowAccess");
    //<ip-collection>
    digester.addCallMethod(curTag + "/access-constraint/ip-filter/ip-collection/client-ip-address",
            "addClientIpAddress", 0);
    //<ip-collection>
    digester.addSetNext(curTag + "/access-constraint/ip-filter", "setIpFilterConfig");
    //<ip-filter>
    digester.addSetNext(curTag + "/access-constraint", "setAccessConstraintConfig");
    //</access-constraint>   
    //<server-hooks>
    digester.addObjectCreate(curTag + "/server-hooks", ServerHooks.class);
    digester.addCallMethod(curTag + "/server-hooks/class-name", "addClassName", 0);
    digester.addSetNext(curTag + "/server-hooks", "setServerHooks");
    //</server-hooks>

    //<secure>
    digester.addObjectCreate(curTag + "/secure", Secure.class);
    digester.addBeanPropertySetter(curTag + "/secure/enable", "enable");
    digester.addBeanPropertySetter(curTag + "/secure/load", "load");
    digester.addBeanPropertySetter(curTag + "/secure/port", "port");
    digester.addBeanPropertySetter(curTag + "/secure/protocol", "protocol");
    digester.addBeanPropertySetter(curTag + "/secure/client-auth-enable", "clientAuthEnable");
    //<secure-store>
    digester.addObjectCreate(curTag + "/secure/secure-store", SecureStore.class);
    digester.addBeanPropertySetter(curTag + "/secure/secure-store/type", "type");
    digester.addBeanPropertySetter(curTag + "/secure/secure-store/algorithm", "algorithm");
    digester.addBeanPropertySetter(curTag + "/secure/secure-store/provider", "provider");
    //<key-store-info>
    digester.addObjectCreate(curTag + "/secure/secure-store/key-store-info", KeyStoreInfo.class);
    digester.addBeanPropertySetter(curTag + "/secure/secure-store/key-store-info/store-file", "storeFile");
    digester.addBeanPropertySetter(curTag + "/secure/secure-store/key-store-info/store-password",
            "storePassword");
    digester.addBeanPropertySetter(curTag + "/secure/secure-store/key-store-info/key-password", "keyPassword");
    digester.addSetNext(curTag + "/secure/secure-store/key-store-info", "setKeyStoreInfo");
    //</key-store-info>
    //<trust-store-info>
    digester.addObjectCreate(curTag + "/secure/secure-store/trust-store-info", TrustStoreInfo.class);
    digester.addBeanPropertySetter(curTag + "/secure/secure-store/trust-store-info/store-file", "storeFile");
    digester.addBeanPropertySetter(curTag + "/secure/secure-store/trust-store-info/store-password",
            "storePassword");
    digester.addBeanPropertySetter(curTag + "/secure/secure-store/trust-store-info/type", "type");
    digester.addBeanPropertySetter(curTag + "/secure/secure-store/trust-store-info/provider", "provider");
    digester.addSetNext(curTag + "/secure/secure-store/trust-store-info", "setTrustStoreInfo");
    //</trust-store-info>
    digester.addBeanPropertySetter(curTag + "/secure/secure-store/secure-store-manager", "secureStoreManager");
    digester.addSetNext(curTag + "/secure/secure-store", "setSecureStore");
    //</secure-store>
    digester.addSetNext(curTag + "/secure", "setSecure");
    //</secure>
    digester.addBeanPropertySetter(curTag + "/command-plugin", "commandPlugin");
    //<advanced-settings>
    digester.addObjectCreate(curTag + "/advanced-settings", AdvancedSettings.class);
    digester.addBeanPropertySetter(curTag + "/advanced-settings/charset", "charset");
    digester.addBeanPropertySetter(curTag + "/advanced-settings/byte-buffer-size", "byteBufferSize");
    digester.addBeanPropertySetter(curTag + "/advanced-settings/backlog", "backlog");
    digester.addBeanPropertySetter(curTag + "/advanced-settings/use-direct-byte-buffer", "useDirectByteBuffer");
    digester.addBeanPropertySetter(curTag + "/advanced-settings/socket-linger", "socketLinger");
    digester.addBeanPropertySetter(curTag + "/advanced-settings/debug-non-blocking-mode",
            "debugNonBlockingMode");
    digester.addBeanPropertySetter(curTag + "/advanced-settings/client-identifier", "clientIdentifier");
    digester.addBeanPropertySetter(curTag + "/advanced-settings/qsobject-pool-maker", "qsObjectPoolMaker");
    digester.addBeanPropertySetter(curTag + "/advanced-settings/max-threads-for-nio-write",
            "maxThreadsForNioWrite");
    digester.addSetNext(curTag + "/advanced-settings", "setAdvancedSettings");
    //</advanced-settings>
    digester.addSetNext(curTag, "setQSAdminServerConfig");
    //</qsadmin-server>

    //<db-object-pool>
    subTag = "db-object-pool";
    digester.addObjectCreate(mainTag + "/" + subTag, DBObjectPoolConfig.class);
    //<database-connection-set>
    digester.addObjectCreate(mainTag + "/" + subTag + "/database-connection-set", DatabaseConnectionSet.class);
    //<database-connection>
    curTag = mainTag + "/" + subTag + "/database-connection-set/database-connection";
    digester.addObjectCreate(curTag, DatabaseConnectionConfig.class);
    digester.addBeanPropertySetter(curTag + "/id", "id");
    digester.addBeanPropertySetter(curTag + "/driver", "driver");
    digester.addBeanPropertySetter(curTag + "/url", "url");
    digester.addBeanPropertySetter(curTag + "/username", "username");
    digester.addBeanPropertySetter(curTag + "/password", "password");
    digester.addSetNext(curTag, "addDatabaseConnection");
    //</database-connection>
    digester.addSetNext(mainTag + "/" + subTag + "/database-connection-set", "setDatabaseConnectionSet");
    //</database-connection-set>
    //<db-pool-util>
    curTag = mainTag + "/" + subTag + "/db-pool-util";
    digester.addBeanPropertySetter(curTag, "dbPoolUtil");
    //</db-pool-util>      
    digester.addSetNext(mainTag + "/" + subTag, "setDBObjectPoolConfig");
    //</db-object-pool>

    //<application-configuration>
    subTag = "application-configuration";
    digester.addObjectCreate(mainTag + "/" + subTag, ApplicationConfiguration.class);
    digester.addBeanPropertySetter(mainTag + "/" + subTag + "/prompt-type", "promptType");
    curTag = mainTag + "/" + subTag + "/" + "property";
    digester.addObjectCreate(curTag, Property.class);
    digester.addBeanPropertySetter(curTag + "/property-name", "name");
    digester.addBeanPropertySetter(curTag + "/property-value", "value");
    digester.addSetNext(curTag, "addProperty");
    digester.addSetNext(mainTag + "/" + subTag, "setApplicationConfiguration");
    //</application-configuration>

    //<init-server-hooks>
    subTag = "init-server-hooks";
    digester.addObjectCreate(mainTag + "/" + subTag, InitServerHooks.class);
    digester.addCallMethod(mainTag + "/" + subTag + "/class-name", "addClassName", 0);
    digester.addSetNext(mainTag + "/" + subTag, "setInitServerHooks");
    //</init-server-hooks>

    QuickServerConfig qsc = (QuickServerConfig) digester.parse(input);

    qsc.setConfigFile(config_file_location);

    loadMissingApplicationConfiguration(qsc);

    QuickServer.setDebugNonBlockingMode(qsc.getAdvancedSettings().getDebugNonBlockingMode());

    return qsc;
}

From source file:org.quickserver.util.xmlreader.PluginConfigReader.java

/**
 * Parses XML config of QSAdmin Plugin/*from  ww  w. j av a 2 s.c  om*/
 */
public static QSAdminPluginConfig read(File input) throws Exception {
    Digester digester = new Digester();
    digester.setValidating(false);

    String mainTag = "qsadmin-plugin";

    digester.addObjectCreate(mainTag, QSAdminPluginConfig.class);
    digester.addBeanPropertySetter(mainTag + "/name", "name");
    digester.addBeanPropertySetter(mainTag + "/desc", "desc");
    digester.addBeanPropertySetter(mainTag + "/type", "type");
    digester.addBeanPropertySetter(mainTag + "/main-class", "mainClass");
    digester.addBeanPropertySetter(mainTag + "/active", "active");

    logger.fine("Loading Plugin config from xml file : " + input.getAbsolutePath());
    QSAdminPluginConfig psc = (QSAdminPluginConfig) digester.parse(input);
    return psc;
}

From source file:spring.travel.site.services.news.NewsDigester.java

public List<NewsItem> from(InputStream is) throws IOException {
    try {/*  w w  w .j  av  a  2 s.com*/
        Digester digester = new Digester();
        digester.setValidating(false);

        digester.push(new ArrayList<NewsItemDigestible>());

        digester.addObjectCreate("rss/channel/item", NewsItemDigestible.class.getName());
        digester.addSetNext("rss/channel/item", "add");
        digester.addBeanPropertySetter("rss/channel/item/title", "headline");
        digester.addBeanPropertySetter("rss/channel/item/description", "standFirst");
        digester.addBeanPropertySetter("rss/channel/item/guid", "link");
        digester.addObjectCreate("rss/channel/item/media:content", Image.class.getName());
        digester.addSetProperties("rss/channel/item/media:content");
        digester.addSetNext("rss/channel/item/media:content", "setImage");

        List<NewsItemDigestible> items = digester.parse(is);
        return items.stream().map(n -> n.toNewsItem()).collect(Collectors.toList());
    } catch (SAXException se) {
        throw new IOException("Failed reading rss feed", se);
    }
}

From source file:uk.co.sdev.undertow.rx.services.news.PushDigester.java

public void digest(InputStream is, Subscriber<? super NewsItem> subscriber) {
    try {/*from   w ww. ja v  a  2s . c  om*/
        Digester digester = new Digester();
        digester.setValidating(false);

        digester.push((Consumer<NewsItemDigestible>) newsItemDigestible -> {
            if (newsItemDigestible.hasImage()) {
                subscriber.onNext(newsItemDigestible.toNewsItem());
            }
        });
        digester.addObjectCreate("rss/channel/item", NewsItemDigestible.class.getName());
        digester.addBeanPropertySetter("rss/channel/item/title", "headline");
        digester.addBeanPropertySetter("rss/channel/item/description", "description");
        digester.addBeanPropertySetter("rss/channel/item/guid", "link");
        configureImageRules(digester);
        digester.addSetNext("rss/channel/item", "accept");

        digester.parse(is);

        subscriber.onCompleted();
    } catch (Exception e) {
        subscriber.onError(e);
    }
}