All Downloads are FREE. Search and download functionalities are using the official Maven repository.

test3.FooBeanInjector Maven / Gradle / Ivy

The newest version!

package test3;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.jvnet.hk2.annotations.Service;
import org.jvnet.hk2.config.ConfigInjector;
import org.jvnet.hk2.config.Dom;
import org.jvnet.hk2.config.InjectionTarget;

@Service(name = "domain", metadata = "target=test3.FooBean,@http-port=optional,@http-port=datatype:java.lang.String,@http-port=leaf,=collection:test3.Property,=collection:test3.HttpListener,=collection:test3.VirtualServer,=test3.HttpListener,[email protected],=leaf,=collection:leaf")
@InjectionTarget(FooBean.class)
public class FooBeanInjector
    extends ConfigInjector
{


    public void inject(Dom dom, FooBean target) {
        attribute_httpPort(dom, target);
        element_properties(dom, target);
        element_httpListeners(dom, target);
        element_virtualServers(dom, target);
        element_all(dom, target);
        element_defaultListener(dom, target);
        element_setBar(dom, target);
        element_setJvmOptions(dom, target);
    }

    public void injectAttribute(Dom dom, String name, FooBean target) {
        if ("http-port".equals(name)) {
            attribute_httpPort(dom, target);
        }
    }

    public void injectElement(Dom dom, String name, FooBean target) {
        if ("property".equals(name)) {
            element_properties(dom, target);
        }
        if ("http-listener".equals(name)) {
            element_httpListeners(dom, target);
        }
        if ("virtual-server".equals(name)) {
            element_virtualServers(dom, target);
        }
        if ("*".equals(name)) {
            element_all(dom, target);
        }
        if ("default-listener".equals(name)) {
            element_defaultListener(dom, target);
        }
        if ("bar".equals(name)) {
            element_setBar(dom, target);
        }
        if ("jvm-options".equals(name)) {
            element_setJvmOptions(dom, target);
        }
    }

    public void attribute_httpPort(Dom dom, FooBean target) {
        String v1 = dom.attribute("http-port");
        if (v1 == null) {
            return ;
        }
        target.httpPort = asInt(v1);
    }

    public void element_properties(Dom dom, FooBean target) {
        List v1 = dom.nodeElements("property");
        if (v1 == null) {
            return ;
        }
        Map v2 = new HashMap(v1 .size());
        for (Dom v3 : v1) {
            v2 .put(v3 .getKey(), ((Property) v3 .get()));
        }
        target.properties = v2;
    }

    public void element_httpListeners(Dom dom, FooBean target) {
        List v1 = dom.nodeElements("http-listener");
        if (v1 == null) {
            return ;
        }
        Map v2 = new HashMap(v1 .size());
        for (Dom v3 : v1) {
            v2 .put(v3 .getKey(), ((test3.HttpListener) v3 .get()));
        }
        target.httpListeners = v2;
    }

    public void element_virtualServers(Dom dom, FooBean target) {
        List v1 = dom.nodeElements("virtual-server");
        if (v1 == null) {
            return ;
        }
        List v2 = new ArrayList(v1 .size());
        for (Dom v3 : v1) {
            v2 .add(((test3.VirtualServer) v3 .get()));
        }
        target.virtualServers = v2;
    }

    public void element_all(Dom dom, FooBean target) {
        List v1 = dom.nodeByTypeElements(Object.class);
        if (v1 == null) {
            return ;
        }
        List v2 = new ArrayList(v1 .size());
        for (Object v3 : v1) {
            v2 .add(v3);
        }
        target.all = v2;
    }

    public void element_defaultListener(Dom dom, FooBean target) {
        Dom v1 = dom.nodeElement("default-listener");
        if (v1 == null) {
            return ;
        }
        target.defaultListener = ((test3.HttpListener) v1 .get());
    }

    public void element_setBar(Dom dom, FooBean target) {
        String v1 = dom.leafElement("bar");
        if (v1 == null) {
            return ;
        }
        target.setBar(v1);
    }

    public void element_setJvmOptions(Dom dom, FooBean target) {
        List v1 = dom.leafElements("jvm-options");
        if (v1 == null) {
            return ;
        }
        List v2 = new ArrayList(v1 .size());
        for (String v3 : v1) {
            v2 .add(v3);
        }
        target.setJvmOptions(v2);
    }

}