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

org.kie.internal.runtime.conf.DeploymentDescriptor Maven / Gradle / Ivy

Go to download

The Drools and jBPM internal API which is NOT backwards compatible between releases.

There is a newer version: 9.44.0.Final
Show newest version
/*
 * Copyright 2014 Red Hat, Inc. and/or its affiliates.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package org.kie.internal.runtime.conf;

import java.util.List;

import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;

import org.kie.api.remote.Remotable;

/**
 * Deployment descriptor defines configurable components of deployable unit - kjar
 * that will be used upon deployment to execution environment providing flexible and
 * independent setup per deployment unit
 *
 */
public interface DeploymentDescriptor {

    public static final String META_INF_LOCATION = "META-INF/kie-deployment-descriptor.xml";
    public static final String TYPE_ALL = "all";
    public static final String TYPE_VIEW = "view";
    public static final String TYPE_EXECUTE = "execute";

    /**
     * Returns name of the JPA persistence unit to be used for runtime engine
     * 
    *
  • non empty should correspond to defined persistence unit in persistence.xml
  • *
  • null to use default persistence unit
  • *
* @return non empty string should correspond to defined persistence unit in persistence.xml, * in case null is returned persistence will use default one - org.jbpm.domain */ String getPersistenceUnit(); /** * Returns name of the JPA persistence unit to be used by audit component *
    *
  • non empty should correspond to defined persistence unit in persistence.xml
  • *
  • null to use default persistence unit
  • *
* @return non empty string should correspond to defined persistence unit in persistence.xml, * in case null is returned persistence will use default one - org.jbpm.domain */ String getAuditPersistenceUnit(); /** * Returns the audit type configuration * @return */ AuditMode getAuditMode(); /** * Returns the runtime engine persistence type configuration * @return */ PersistenceMode getPersistenceMode(); /** * Returns runtime strategy to be used, default Singleton. * @return */ RuntimeStrategy getRuntimeStrategy(); /** * Returns list of object marshaling strategies to be applied on KieSession * @return */ List getMarshallingStrategies(); /** * Returns list of event listeners (process, agenda, rule runtime) to be applied on KieSession * @return */ List getEventListeners(); /** * Return list of globals to be applied on KieSession * @return */ List getGlobals(); /** * Return list of work item handlers to be applied on KieSession * @return */ List getWorkItemHandlers(); /** * Returns list of task event listeners to be applied on KieSession * @return */ List getTaskEventListeners(); /** * List of (kie) environment entries to be registered * @return */ List getEnvironmentEntries(); /** * List of kiesession configuration entries to be registered * @return */ List getConfiguration(); /** * Returns implementation specific builder to construct instances of the descriptor; * @return */ DeploymentDescriptorBuilder getBuilder(); /** * Returns all required roles required to be granted access to the deployment. * Empty list or null means no security will be applied. * @return */ List getRequiredRoles(); /** * Returns required for given type of applicability. Supported types are: *
    *
  • all
  • *
  • view
  • *
  • execute
  • *
* @param type indicates the type which required roles shoud apply * @return */ List getRequiredRoles(String type); /** * Returns additional classes that shall be added to remote services context. * All classes that directly belong to kjar (or are declared as dependency of type kjar) * do not need to be listed as part of this collection. * @return */ List getClasses(); /** * Returns whether or not the classes used in the serialization mechanism * are limited to classes annotated with @{@link Remotable}, @{@link XmlRootElement}, * or @{@link XmlType}. * In the 6.x branches, the default is false (classes are not limited.) * In the 7.x branches, the default is true (classes are limited.) * @return a {@link Boolean} */ Boolean getLimitSerializationClasses(); /** * Returns XML representation of this descriptor instance * @return */ String toXml(); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy