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

com.sun.enterprise.deployment.WebBundleDescriptor Maven / Gradle / Ivy

There is a newer version: 4.1.2.181
Show newest version
/*
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
 *
 * Copyright (c) 1997-2017 Oracle and/or its affiliates. All rights reserved.
 *
 * The contents of this file are subject to the terms of either the GNU
 * General Public License Version 2 only ("GPL") or the Common Development
 * and Distribution License("CDDL") (collectively, the "License").  You
 * may not use this file except in compliance with the License.  You can
 * obtain a copy of the License at
 * https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
 * or packager/legal/LICENSE.txt.  See the License for the specific
 * language governing permissions and limitations under the License.
 *
 * When distributing the software, include this License Header Notice in each
 * file and include the License file at packager/legal/LICENSE.txt.
 *
 * GPL Classpath Exception:
 * Oracle designates this particular file as subject to the "Classpath"
 * exception as provided by Oracle in the GPL Version 2 section of the License
 * file that accompanied this code.
 *
 * Modifications:
 * If applicable, add the following below the License Header, with the fields
 * enclosed by brackets [] replaced by your own identifying information:
 * "Portions Copyright [year] [name of copyright owner]"
 *
 * Contributor(s):
 * If you wish your version of this file to be governed by only the CDDL or
 * only the GPL Version 2, indicate your decision by adding "[Contributor]
 * elects to include this software in this distribution under the [CDDL or GPL
 * Version 2] license."  If you don't indicate a single choice of license, a
 * recipient has the option to distribute your version of this file under
 * either the CDDL, the GPL Version 2 or to extend the choice of license to
 * its licensees as provided above.  However, if you add GPL Version 2 code
 * and therefore, elected the GPL Version 2 license, then the option applies
 * only if the new code is made subject to such option by the copyright
 * holder.
 */
// Portions Copyright [2016] [Payara Foundation and/or its affiliates]

package com.sun.enterprise.deployment;

import com.sun.enterprise.deployment.runtime.web.SunWebApp;
import com.sun.enterprise.deployment.types.EjbReference;
import com.sun.enterprise.deployment.types.*;
import com.sun.enterprise.deployment.util.*;
import com.sun.enterprise.deployment.web.*;
import org.glassfish.api.deployment.archive.ArchiveType;
import org.glassfish.api.event.EventTypes;
import org.glassfish.deployment.common.DescriptorVisitor;
import org.glassfish.deployment.common.JavaEEResourceType;

import java.util.*;

/**
 * I am an object that represents all the deployment information about
 * a web app [{0}]lication.
 *
 * @author Danny Coward
 */

public abstract class WebBundleDescriptor extends CommonResourceBundleDescriptor
    implements WritableJndiNameEnvironment,
    ResourceReferenceContainer,
    ResourceEnvReferenceContainer,
    EjbReferenceContainer,
    MessageDestinationReferenceContainer,
    ServiceReferenceContainer {

    public static final EventTypes AFTER_SERVLET_CONTEXT_INITIALIZED_EVENT =
        EventTypes.create("After_Servlet_Context_Initialized",
                          WebBundleDescriptor.class);

    protected boolean conflictLoginConfig = false;
    protected boolean conflictDataSourceDefinition = false;
    protected boolean conflictMailSessionDefinition = false;
    protected boolean conflictConnectionFactoryDefinition = false;
    protected boolean conflictAdminObjectDefinition = false;
    protected boolean conflictJMSConnectionFactoryDefinition = false;
    protected boolean conflictJMSDestinationDefinition = false;
    protected boolean conflictEnvironmentEntry = false;
    protected boolean conflictEjbReference = false;
    protected boolean conflictServiceReference = false;
    protected boolean conflictResourceReference = false;
    protected boolean conflictResourceEnvReference = false;
    protected boolean conflictMessageDestinationReference = false;
    protected boolean conflictEntityManagerReference = false;
    protected boolean conflictEntityManagerFactoryReference = false;

    public abstract void addWebBundleDescriptor(WebBundleDescriptor webBundleDescriptor);

    public abstract void addDefaultWebBundleDescriptor(WebBundleDescriptor webBundleDescriptor);

    public abstract void addJndiNameEnvironment(JndiNameEnvironment env);

    public abstract boolean isEmpty();

    public abstract String getDefaultSpecVersion();

    public abstract Collection getNamedDescriptors();

    public abstract Vector getNamedReferencePairs();

    public abstract String getContextRoot();

    public abstract void setContextRoot(String contextRoot);

    public abstract Set getWebComponentDescriptors();

    public abstract void addWebComponentDescriptor(WebComponentDescriptor webComponentDescriptor);

    protected abstract WebComponentDescriptor combineWebComponentDescriptor(
        WebComponentDescriptor webComponentDescriptor);

    public abstract void removeWebComponentDescriptor(WebComponentDescriptor webComponentDescriptor);

    public abstract SessionConfig getSessionConfig();

    public abstract void setSessionConfig(SessionConfig sessionConfig);

    public abstract boolean hasServiceReferenceDescriptors();

    public abstract Set getServiceReferenceDescriptors();

    public abstract void addServiceReferenceDescriptor(ServiceReferenceDescriptor
                                                           serviceRef);

    public abstract void removeServiceReferenceDescriptor(ServiceReferenceDescriptor
                                                              serviceRef);

    public abstract ServiceReferenceDescriptor getServiceReferenceByName(String name);

    protected abstract ServiceReferenceDescriptor _getServiceReferenceByName(String name);

    protected abstract void combineServiceReferenceDescriptors(JndiNameEnvironment env);

    public abstract Set getResourceEnvReferenceDescriptors();

    public abstract void addResourceEnvReferenceDescriptor(ResourceEnvReferenceDescriptor resourceEnvRefReference);

    public abstract void removeResourceEnvReferenceDescriptor(ResourceEnvReferenceDescriptor resourceEnvRefReference);

    public abstract ResourceEnvReferenceDescriptor getResourceEnvReferenceByName(String name);

    protected abstract ResourceEnvReferenceDescriptor _getResourceEnvReferenceByName(String name);

    protected abstract void combineResourceEnvReferenceDescriptors(JndiNameEnvironment env);

    protected abstract void combineResourceDescriptors(JndiNameEnvironment env, JavaEEResourceType javaEEResourceType);

    public abstract Set getMimeMappingsSet();

    public abstract void setMimeMappings(Set mimeMappings);

    public abstract Enumeration getMimeMappings();

    public abstract String addMimeMapping(MimeMapping mimeMapping);

    public abstract LocaleEncodingMappingListDescriptor getLocaleEncodingMappingListDescriptor();

    public abstract void setLocaleEncodingMappingListDescriptor(LocaleEncodingMappingListDescriptor lemDesc);

    public abstract void removeMimeMapping(MimeMapping mimeMapping);

    public abstract Enumeration getWelcomeFiles();

    public abstract Set getWelcomeFilesSet();

    public abstract void addWelcomeFile(String fileUri);

    public abstract void removeWelcomeFile(String fileUri);

    public abstract void setWelcomeFiles(Set welcomeFiles);

    public abstract Set getContextParametersSet();

    public abstract Enumeration getContextParameters();

    public abstract void addContextParameter(ContextParameter contextParameter);

    public abstract void addContextParameter(EnvironmentProperty contextParameter);

    public abstract void removeContextParameter(ContextParameter contextParameter);

    public abstract boolean isDistributable();

    public abstract void setDistributable(boolean isDistributable);

    public abstract Enumeration getEjbReferences();

    public abstract Set getEjbReferenceDescriptors();

    public abstract EjbReferenceDescriptor getEjbReferenceByName(String name);

    public abstract EjbReference getEjbReference(String name);

    protected abstract EjbReference _getEjbReference(String name);

    public abstract ResourceReferenceDescriptor getResourceReferenceByName(String name);

    protected abstract ResourceReferenceDescriptor _getResourceReferenceByName(String name);

    public abstract Set getResourceReferenceDescriptors();

    public abstract Set getEntityManagerFactoryReferenceDescriptors();

    public abstract EntityManagerFactoryReferenceDescriptor getEntityManagerFactoryReferenceByName(String name);

    protected abstract EntityManagerFactoryReferenceDescriptor _getEntityManagerFactoryReferenceByName(String name);

    public abstract void addEntityManagerFactoryReferenceDescriptor(EntityManagerFactoryReferenceDescriptor reference);

    protected abstract void combineEntityManagerFactoryReferenceDescriptors(JndiNameEnvironment env);

    public abstract Set getEntityManagerReferenceDescriptors();

    public abstract EntityManagerReferenceDescriptor getEntityManagerReferenceByName(String name);

    protected abstract EntityManagerReferenceDescriptor _getEntityManagerReferenceByName(String name);

    public abstract void addEntityManagerReferenceDescriptor(EntityManagerReferenceDescriptor reference) ;

    protected abstract void combineEntityManagerReferenceDescriptors(JndiNameEnvironment env);

    public abstract Collection findReferencedPUs();

    public abstract Set getEnvironmentProperties();

    public abstract void addEjbReferenceDescriptor(EjbReference ejbReference);

    public abstract void addEjbReferenceDescriptor(EjbReferenceDescriptor ejbReferenceDescriptor);

    public abstract void removeEjbReferenceDescriptor(EjbReferenceDescriptor ejbReferenceDescriptor);

    public abstract void removeEjbReferenceDescriptor(EjbReference ejbReferenceDescriptor);

    protected abstract void combineEjbReferenceDescriptors(JndiNameEnvironment env);

    public abstract Enumeration getResourceReferences();

    public abstract void addResourceReferenceDescriptor(ResourceReferenceDescriptor resourceReference);

    public abstract void removeResourceReferenceDescriptor(ResourceReferenceDescriptor resourceReference);

    protected abstract void combineResourceReferenceDescriptors(JndiNameEnvironment env);

    public abstract Set getMessageDestinationReferenceDescriptors();

    public abstract void addMessageDestinationReferenceDescriptor(MessageDestinationReferenceDescriptor messageDestRef) ;

    public abstract void removeMessageDestinationReferenceDescriptor(MessageDestinationReferenceDescriptor msgDestRef);

    public abstract MessageDestinationReferenceDescriptor getMessageDestinationReferenceByName(String name);

    protected abstract MessageDestinationReferenceDescriptor _getMessageDestinationReferenceByName(String name);

    protected abstract void combineMessageDestinationReferenceDescriptors(JndiNameEnvironment env);

    public abstract Set getPostConstructDescriptors();

    public abstract void addPostConstructDescriptor(LifecycleCallbackDescriptor postConstructDesc);

    public abstract LifecycleCallbackDescriptor getPostConstructDescriptorByClass(String className);

    protected abstract void combinePostConstructDescriptors(WebBundleDescriptor webBundleDescriptor);

    public abstract Set getPreDestroyDescriptors();

    public abstract void addPreDestroyDescriptor(LifecycleCallbackDescriptor preDestroyDesc);

    public abstract LifecycleCallbackDescriptor getPreDestroyDescriptorByClass(String className);

    protected abstract void combinePreDestroyDescriptors(WebBundleDescriptor webBundleDescriptor);

    protected abstract List getInjectableResourcesByClass(String className, JndiNameEnvironment jndiNameEnv);

    public abstract List getInjectableResourcesByClass(String className);

    public abstract InjectionInfo getInjectionInfoByClass(Class clazz);

    public abstract Enumeration getSecurityRoles();

    public abstract void addSecurityRole(SecurityRole securityRole);

    public abstract void addSecurityRole(SecurityRoleDescriptor securityRole);

    public abstract SecurityRoleReference getSecurityRoleReferenceByName(String compName, String roleName);

    public abstract boolean isDenyUncoveredHttpMethods();

    protected abstract void combineSecurityConstraints(Set firstScSet, Set secondScSet);

    public abstract Set getSecurityConstraintsSet();

    public abstract Enumeration getSecurityConstraints();

    public abstract Collection getSecurityConstraintsForUrlPattern(String urlPattern);

    public abstract void addSecurityConstraint(SecurityConstraint securityConstraint);

    public abstract void removeSecurityConstraint(SecurityConstraint securityConstraint);

    public abstract Set getServletDescriptors();

    public abstract Set getJspDescriptors();

    public abstract Set getEnvironmentEntrySet();

    public abstract Enumeration getEnvironmentEntries();

    public abstract void addEnvironmentEntry(EnvironmentEntry environmentEntry);

    protected abstract EnvironmentProperty _getEnvironmentPropertyByName(String name);

    public abstract EnvironmentProperty getEnvironmentPropertyByName(String name);

    public abstract void removeEnvironmentProperty(EnvironmentProperty environmentProperty);

    public abstract void addEnvironmentProperty(EnvironmentProperty environmentProperty);

    public abstract void removeEnvironmentEntry(EnvironmentEntry environmentEntry);

    protected abstract void combineEnvironmentEntries(JndiNameEnvironment env);

    public abstract LoginConfiguration getLoginConfiguration();

    public abstract void setLoginConfiguration(LoginConfiguration loginConfiguration);

    protected abstract void combineLoginConfiguration(WebBundleDescriptor webBundleDescriptor);

    public abstract WebComponentDescriptor getWebComponentByName(String name);

    public abstract WebComponentDescriptor getWebComponentByCanonicalName(String name);

    public abstract WebComponentDescriptor[] getWebComponentByImplName(String name);

    public abstract Vector getServletFilters();

    public abstract Vector getServletFilterDescriptors();

    public abstract void addServletFilter(ServletFilter ref);

    public abstract void removeServletFilter(ServletFilter ref);

    protected abstract void combineServletFilters(WebBundleDescriptor webBundleDescriptor);

    public abstract Vector getServletFilterMappings();

    public abstract Vector getServletFilterMappingDescriptors();

    public abstract void addServletFilterMapping(ServletFilterMapping ref);

    public abstract void removeServletFilterMapping(ServletFilterMapping ref);

    public abstract void moveServletFilterMapping(ServletFilterMapping ref, int relPos);

    protected abstract void combineServletFilterMappings(WebBundleDescriptor webBundleDescriptor);

    public abstract Vector getAppListeners();

    public abstract Vector getAppListenerDescriptors();

    public abstract void setAppListeners(Collection c);

    public abstract void addAppListenerDescriptor(AppListenerDescriptor ref);

    public abstract void addAppListenerDescriptorToFirst(AppListenerDescriptor ref);

    public abstract void removeAppListenerDescriptor(AppListenerDescriptor ref);

    public abstract void moveAppListenerDescriptor(AppListenerDescriptor ref, int relPos);

    public abstract boolean isShowArchivedRealPathEnabled();

    public abstract void setShowArchivedRealPathEnabled(boolean enabled);

    public abstract int getServletReloadCheckSecs();

    public abstract void setServletReloadCheckSecs(int secs);

    public abstract boolean hasWebServiceClients();

    protected abstract boolean removeVectorItem(Vector list, Object ref);

    protected abstract void moveVectorItem(Vector list, Object ref, int rpos);

    public abstract void putJarNameWebFragmentNamePair(String jarName, String webFragName);

    public abstract Map getJarNameToWebFragmentNameMap();

    public abstract Map getUrlPatternToServletNameMap();

    public abstract void resetUrlPatternToServletNameMap();

    public abstract List getOrderedLibs();

    public abstract void addOrderedLib(String libName);

    protected abstract void combineInjectionTargets(EnvironmentProperty env1, EnvironmentProperty env2);

    public abstract void printCommon(StringBuffer toStringBuffer);

    public abstract ArchiveType getModuleType();

    public abstract ComponentVisitor getBundleVisitor();

    public abstract DescriptorVisitor getTracerVisitor();

    public abstract String getDeploymentDescriptorDir() ;

    public abstract SunWebApp getSunDescriptor();

    public abstract void setSunDescriptor(SunWebApp webApp);

    public abstract void setExtensionProperty(String key, String value);

    public abstract boolean hasExtensionProperty(String key);

    public abstract boolean getServletInitializersEnabled();
    public abstract void setServletInitializersEnabled(boolean tf);

    public boolean isConflictLoginConfig() {
        return conflictLoginConfig;
    }

    public boolean isConflictDataSourceDefinition() {
        return conflictDataSourceDefinition;
    }

    public boolean isConflictMailSessionDefinition() {
        return conflictMailSessionDefinition;
    }

    public boolean isConflictConnectionFactoryDefinition() {
        return conflictConnectionFactoryDefinition;
    }

    public boolean isConflictAdminObjectDefinition() {
        return conflictAdminObjectDefinition;
    }

    public boolean isConflictJMSConnectionFactoryDefinition() {
        return conflictJMSConnectionFactoryDefinition;
    }

    public boolean isConflictJMSDestinationDefinition() {
        return conflictJMSDestinationDefinition;
    }

    public boolean isConflictEnvironmentEntry() {
        return conflictEnvironmentEntry;
    }

    public boolean isConflictEjbReference() {
        return conflictEjbReference;
    }

    public boolean isConflictServiceReference() {
        return conflictServiceReference;
    }

    public boolean isConflictResourceReference() {
        return conflictResourceReference;
    }

    public boolean isConflictResourceEnvReference() {
        return conflictResourceEnvReference;
    }

    public boolean isConflictMessageDestinationReference() {
        return conflictMessageDestinationReference;
    }

    public boolean isConflictEntityManagerReference() {
        return conflictEntityManagerReference;
    }

    public boolean isConflictEntityManagerFactoryReference() {
        return conflictEntityManagerFactoryReference;
    }

    public abstract Set getConflictedMimeMappingExtensions();
}
    




© 2015 - 2024 Weber Informatics LLC | Privacy Policy