Package org.apache.catalina.deploy

Examples of org.apache.catalina.deploy.WebAbsoluteOrdering


     * Set the absolute ordering for this context.
     *
     * @param webAbsoluteOrdering the new absolute ordering for this context
     */
    public void setWebAbsoluteOrdering(WebAbsoluteOrdering webAbsoluteOrdering) {
        WebAbsoluteOrdering oldWebAbsoluteOrdering = this.webAbsoluteOrdering;
        this.webAbsoluteOrdering = webAbsoluteOrdering;
        support.firePropertyChange("webAbsoluteOrdering", oldWebAbsoluteOrdering,
                this.webAbsoluteOrdering);
    }
View Full Code Here


    /**
     * Parse fragments order.
     */
    protected void createFragmentsOrder() {
       
        WebAbsoluteOrdering absoluteOrdering = context.getWebAbsoluteOrdering();
        List<WebOrdering> orderings = new ArrayList<WebOrdering>();
        HashSet<String> jarsSet = new HashSet<String>();
        boolean fragmentFound = false;
       
        // Parse the ordering defined in web fragments
        JarRepository jarRepository = context.getJarRepository();
        JarFile[] jars = jarRepository.findJars();
        for (int i = 0; i < jars.length; i++) {
            // Find webapp descriptor fragments
            jarsSet.add(jars[i].getName());
            JarFile jarFile = jars[i];
            InputStream is = null;
            ZipEntry entry = jarFile.getEntry(Globals.WEB_FRAGMENT_PATH);
            if (entry != null) {
                fragmentFound = true;
                try {
                    webFragments.add(jars[i].getName());
                    is = jarFile.getInputStream(entry);
                    InputSource input = new InputSource((new File(jars[i].getName())).toURI().toURL().toExternalForm());
                    input.setByteStream(is);
                    synchronized (fragmentOrderingDigester) {
                        try {
                            fragmentOrderingDigester.parse(input);
                            WebOrdering ordering = (WebOrdering) fragmentOrderingDigester.peek();
                            if (ordering != null) {
                                ordering.setJar(jars[i].getName());
                                orderings.add(ordering);
                            }
                        } finally {
                            fragmentOrderingDigester.reset();
                        }
                    }
                } catch (Exception e) {
                    log.error(sm.getString("contextConfig.fragmentOrderingParse", jars[i].getName()), e);
                    ok = false;
                } finally {
                    try {
                        if (is != null) {
                            is.close();
                        }
                    } catch (IOException e) {
                        // Ignore
                    }
                }
            } else {
                // If there is no fragment, still consider it for ordering as a
                // fragment specifying no name and no order
                WebOrdering ordering = new WebOrdering();
                ordering.setJar(jars[i].getName());
                orderings.add(ordering);
            }
        }
        if (!fragmentFound) {
            // Drop the order as there is no fragment in the webapp
            orderings.clear();
        }
       
        // Generate web fragments parsing order
        if (absoluteOrdering != null) {
            // Absolute ordering from web.xml, any relative fragment ordering is ignored
            List<String> fragmentNames = absoluteOrdering.getOrder();
            int otherPos = -1;
            for (int i = 0; i < fragmentNames.size(); i++) {
                String fragmentName = fragmentNames.get(i);
                if (fragmentName.equals("*")) {
                    if (otherPos >= 0) {
View Full Code Here

     * Set the absolute ordering for this context.
     *
     * @param webAbsoluteOrdering the new absolute ordering for this context
     */
    public void setWebAbsoluteOrdering(WebAbsoluteOrdering webAbsoluteOrdering) {
        WebAbsoluteOrdering oldWebAbsoluteOrdering = this.webAbsoluteOrdering;
        this.webAbsoluteOrdering = webAbsoluteOrdering;
        support.firePropertyChange("webAbsoluteOrdering", oldWebAbsoluteOrdering,
                this.webAbsoluteOrdering);
    }
View Full Code Here

    public AddOthersRule() {
    }

    public void begin(String namespace, String name, Attributes attributes)
        throws Exception {
        WebAbsoluteOrdering ordering = (WebAbsoluteOrdering) digester.peek();
        ordering.addName("*");
    }
View Full Code Here

    /**
     * Parse fragments order.
     */
    protected void createFragmentsOrder() {
       
        WebAbsoluteOrdering absoluteOrdering = context.getWebAbsoluteOrdering();
        List<WebOrdering> orderings = new ArrayList<WebOrdering>();
        HashSet<String> jarsSet = new HashSet<String>();
        boolean fragmentFound = false;
       
        // Parse the ordering defined in web fragments
        JarRepository jarRepository = context.getJarRepository();
        JarFile[] jars = jarRepository.findJars();
        for (int i = 0; i < jars.length; i++) {
            // Find webapp descriptor fragments
            jarsSet.add(jars[i].getName());
            JarFile jarFile = jars[i];
            InputStream is = null;
            ZipEntry entry = jarFile.getEntry(Globals.WEB_FRAGMENT_PATH);
            if (entry != null) {
                fragmentFound = true;
                try {
                    webFragments.add(jars[i].getName());
                    is = jarFile.getInputStream(entry);
                    InputSource input = new InputSource((new File(jars[i].getName())).toURI().toURL().toExternalForm());
                    input.setByteStream(is);
                    synchronized (fragmentOrderingDigester) {
                        try {
                            fragmentOrderingDigester.parse(input);
                            WebOrdering ordering = (WebOrdering) fragmentOrderingDigester.peek();
                            if (ordering != null) {
                                ordering.setJar(jars[i].getName());
                                orderings.add(ordering);
                            }
                        } finally {
                            fragmentOrderingDigester.reset();
                        }
                    }
                } catch (Exception e) {
                    log.error(sm.getString("contextConfig.fragmentOrderingParse", jars[i].getName()), e);
                    ok = false;
                } finally {
                    try {
                        if (is != null) {
                            is.close();
                        }
                    } catch (IOException e) {
                        // Ignore
                    }
                }
            } else {
                // If there is no fragment, still consider it for ordering as a
                // fragment specifying no name and no order
                WebOrdering ordering = new WebOrdering();
                ordering.setJar(jars[i].getName());
                orderings.add(ordering);
            }
        }
        if (!fragmentFound) {
            // Drop the order as there is no fragment in the webapp
            orderings.clear();
        }
       
        // Generate web fragments parsing order
        if (absoluteOrdering != null) {
            // Absolute ordering from web.xml, any relative fragment ordering is ignored
            List<String> fragmentNames = absoluteOrdering.getOrder();
            int otherPos = -1;
            for (int i = 0; i < fragmentNames.size(); i++) {
                String fragmentName = fragmentNames.get(i);
                if (fragmentName.equals("*")) {
                    if (otherPos >= 0) {
View Full Code Here

    /**
     * Parse fragments order.
     */
    protected void createFragmentsOrder() {
       
        WebAbsoluteOrdering absoluteOrdering = context.getWebAbsoluteOrdering();
        List<WebOrdering> orderings = new ArrayList<WebOrdering>();
        HashSet<String> jarsSet = new HashSet<String>();
        boolean fragmentFound = false;
       
        // Parse the ordering defined in web fragments
        JarRepository jarRepository = context.getJarRepository();
        JarFile[] jars = jarRepository.findJars();
        for (int i = 0; i < jars.length; i++) {
            // Find webapp descriptor fragments
            jarsSet.add(jars[i].getName());
            JarFile jarFile = jars[i];
            InputStream is = null;
            ZipEntry entry = jarFile.getEntry(Globals.WEB_FRAGMENT_PATH);
            if (entry != null) {
                fragmentFound = true;
                try {
                    webFragments.add(jars[i].getName());
                    is = jarFile.getInputStream(entry);
                    InputSource input = new InputSource((new File(jars[i].getName())).toURI().toURL().toExternalForm());
                    input.setByteStream(is);
                    synchronized (fragmentOrderingDigester) {
                        try {
                            fragmentOrderingDigester.parse(input);
                            WebOrdering ordering = (WebOrdering) fragmentOrderingDigester.peek();
                            if (ordering != null) {
                                ordering.setJar(jars[i].getName());
                                orderings.add(ordering);
                            }
                        } finally {
                            fragmentOrderingDigester.reset();
                        }
                    }
                } catch (Exception e) {
                    log.error(sm.getString("contextConfig.fragmentOrderingParse", jars[i].getName()), e);
                    ok = false;
                } finally {
                    try {
                        if (is != null) {
                            is.close();
                        }
                    } catch (IOException e) {
                        // Ignore
                    }
                }
            } else {
                // If there is no fragment, still consider it for ordering as a
                // fragment specifying no name and no order
                WebOrdering ordering = new WebOrdering();
                ordering.setJar(jars[i].getName());
                orderings.add(ordering);
            }
        }
        if (!fragmentFound) {
            // Drop the order as there is no fragment in the webapp
            orderings.clear();
        }
       
        // Generate web fragments parsing order
        if (absoluteOrdering != null) {
            // Absolute ordering from web.xml, any relative fragment ordering is ignored
            List<String> fragmentNames = absoluteOrdering.getOrder();
            int otherPos = -1;
            for (int i = 0; i < fragmentNames.size(); i++) {
                String fragmentName = fragmentNames.get(i);
                if (fragmentName.equals("*")) {
                    if (otherPos >= 0) {
View Full Code Here

    public AddOthersRule() {
    }

    public void begin(String namespace, String name, Attributes attributes)
        throws Exception {
        WebAbsoluteOrdering ordering = (WebAbsoluteOrdering) digester.peek();
        ordering.addName("*");
    }
View Full Code Here

    /**
     * Parse fragments order.
     */
    protected void createFragmentsOrder() {
       
        WebAbsoluteOrdering absoluteOrdering = context.getWebAbsoluteOrdering();
        List<WebOrdering> orderings = new ArrayList<WebOrdering>();
        HashSet<String> jarsSet = new HashSet<String>();
        boolean fragmentFound = false;
       
        // Parse the ordering defined in web fragments
        JarRepository jarRepository = context.getJarRepository();
        JarFile[] jars = jarRepository.findJars();
        for (int i = 0; i < jars.length; i++) {
            // Find webapp descriptor fragments
            jarsSet.add(jars[i].getName());
            JarFile jarFile = jars[i];
            InputStream is = null;
            ZipEntry entry = jarFile.getEntry(Globals.WEB_FRAGMENT_PATH);
            if (entry != null) {
                fragmentFound = true;
                try {
                    webFragments.add(jars[i].getName());
                    is = jarFile.getInputStream(entry);
                    InputSource input = new InputSource((new File(jars[i].getName())).toURI().toURL().toExternalForm());
                    input.setByteStream(is);
                    synchronized (fragmentOrderingDigester) {
                        try {
                            fragmentOrderingDigester.parse(input);
                            WebOrdering ordering = (WebOrdering) fragmentOrderingDigester.peek();
                            if (ordering != null) {
                                ordering.setJar(jars[i].getName());
                                orderings.add(ordering);
                            }
                        } finally {
                            fragmentOrderingDigester.reset();
                        }
                    }
                } catch (Exception e) {
                    log.error(sm.getString("contextConfig.fragmentOrderingParse", jars[i].getName()), e);
                    ok = false;
                } finally {
                    try {
                        if (is != null) {
                            is.close();
                        }
                    } catch (IOException e) {
                        // Ignore
                    }
                }
            } else {
                // If there is no fragment, still consider it for ordering as a
                // fragment specifying no name and no order
                WebOrdering ordering = new WebOrdering();
                ordering.setJar(jars[i].getName());
                orderings.add(ordering);
            }
        }
        if (!fragmentFound) {
            // Drop the order as there is no fragment in the webapp
            orderings.clear();
        }
       
        // Generate web fragments parsing order
        if (absoluteOrdering != null) {
            // Absolute ordering from web.xml, any relative fragment ordering is ignored
            List<String> fragmentNames = absoluteOrdering.getOrder();
            int otherPos = -1;
            for (int i = 0; i < fragmentNames.size(); i++) {
                String fragmentName = fragmentNames.get(i);
                if (fragmentName.equals("*")) {
                    if (otherPos >= 0) {
View Full Code Here

     * Set the absolute ordering for this context.
     *
     * @param webAbsoluteOrdering the new absolute ordering for this context
     */
    public void setWebAbsoluteOrdering(WebAbsoluteOrdering webAbsoluteOrdering) {
        WebAbsoluteOrdering oldWebAbsoluteOrdering = this.webAbsoluteOrdering;
        this.webAbsoluteOrdering = webAbsoluteOrdering;
        support.firePropertyChange("webAbsoluteOrdering", oldWebAbsoluteOrdering,
                this.webAbsoluteOrdering);
    }
View Full Code Here

TOP

Related Classes of org.apache.catalina.deploy.WebAbsoluteOrdering

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.