Search in sources :

Example 1 with DefaultHelper

use of org.glassfish.web.deployment.runtime.DefaultHelper in project Payara by payara.

the class CacheNode method writeDescriptor.

/**
 * write the descriptor class to a DOM tree and return it
 *
 * @param parent node for the DOM tree
 * @param nodeName node name
 * @param descriptor the descriptor to write
 * @return the DOM tree top node
 */
@Override
public Node writeDescriptor(Node parent, String nodeName, Cache descriptor) {
    Element cache = (Element) super.writeDescriptor(parent, nodeName, descriptor);
    // cache-helpers*
    CacheHelper[] cacheHelpers = descriptor.getCacheHelper();
    if (cacheHelpers != null && cacheHelpers.length > 0) {
        CacheHelperNode chn = new CacheHelperNode();
        for (int i = 0; i < cacheHelpers.length; i++) {
            chn.writeDescriptor(cache, RuntimeTagNames.CACHE_HELPER, cacheHelpers[i]);
        }
    }
    WebPropertyNode wpn = new WebPropertyNode();
    // default-helper?
    DefaultHelper dh = descriptor.getDefaultHelper();
    if (dh != null && dh.getWebProperty() != null) {
        Node dhn = appendChild(cache, RuntimeTagNames.DEFAULT_HELPER);
        wpn.writeDescriptor(dhn, RuntimeTagNames.PROPERTY, dh.getWebProperty());
    }
    // property*
    wpn.writeDescriptor(cache, RuntimeTagNames.PROPERTY, descriptor.getWebProperty());
    // cache-mapping
    CacheMapping[] mappings = descriptor.getCacheMapping();
    if (mappings != null && mappings.length > 0) {
        CacheMappingNode cmn = new CacheMappingNode();
        for (int i = 0; i < mappings.length; i++) {
            cmn.writeDescriptor(cache, RuntimeTagNames.CACHE_MAPPING, mappings[i]);
        }
    }
    // max-entries, timeout-in-seconds, enabled
    setAttribute(cache, RuntimeTagNames.MAX_ENTRIES, (String) descriptor.getAttributeValue(Cache.MAX_ENTRIES));
    setAttribute(cache, RuntimeTagNames.TIMEOUT_IN_SECONDS, (String) descriptor.getAttributeValue(Cache.TIMEOUT_IN_SECONDS));
    setAttribute(cache, RuntimeTagNames.ENABLED, (String) descriptor.getAttributeValue(Cache.ENABLED));
    return cache;
}
Also used : DefaultHelper(org.glassfish.web.deployment.runtime.DefaultHelper) CacheHelper(org.glassfish.web.deployment.runtime.CacheHelper) Element(org.w3c.dom.Element) XMLElement(com.sun.enterprise.deployment.node.XMLElement) Node(org.w3c.dom.Node) RuntimeDescriptorNode(com.sun.enterprise.deployment.node.runtime.RuntimeDescriptorNode) CacheMapping(org.glassfish.web.deployment.runtime.CacheMapping)

Aggregations

XMLElement (com.sun.enterprise.deployment.node.XMLElement)1 RuntimeDescriptorNode (com.sun.enterprise.deployment.node.runtime.RuntimeDescriptorNode)1 CacheHelper (org.glassfish.web.deployment.runtime.CacheHelper)1 CacheMapping (org.glassfish.web.deployment.runtime.CacheMapping)1 DefaultHelper (org.glassfish.web.deployment.runtime.DefaultHelper)1 Element (org.w3c.dom.Element)1 Node (org.w3c.dom.Node)1