org.glassfish.paas.gfplugin
Class GlassFishPlugin

java.lang.Object
  extended by org.glassfish.paas.spe.common.ServiceProvisioningEngineBase<JavaEEServiceType>
      extended by org.glassfish.paas.gfplugin.GlassFishPlugin
All Implemented Interfaces:
GlassFishPluginConstants, ServicePlugin

@Service
@Scoped(value=org.jvnet.hk2.component.PerLookup.class)
public class GlassFishPlugin
extends ServiceProvisioningEngineBase<JavaEEServiceType>
implements GlassFishPluginConstants

Author:
Bhavanishankar S

Field Summary
 
Fields inherited from interface org.glassfish.paas.gfplugin.GlassFishPluginConstants
ASADMIN_COMMAND, CLASSNAME, CLUSTER_ARG, CREATE_ELASTIC_SERVICE, CREATE_INSTANCE, CREATE_LOCAL_INSTANCE, CREATE_NODE_SSH, DATABASE_SERVICE_TYPE, DEFAULT_DAS_PORT, DEFAULT_MAX_CLUSTERSIZE, DEFAULT_MIN_CLUSTERSIZE, DELETE_ELASTIC_SERVICE, DELETE_INSTANCE, DELETE_NODE_SSH, DEPLOYMENT_PLAN_DIR, DISABLE_AUTO_SCALING, ENABLE_AUTO_SCALING, FS, HOST, INIT_TYPE_LAZY, INSTALL_DIR_ARG, INSTANCE_NAME_FORMAT, IP_ADDRESS, JAR_EXTN, JAVAEE_SERVICE_TYPE, JDBC_CONNECTION_POOL, JDBC_DATASOURCE, JDBC_DS_CLASSNAME, JDBC_DS_RESTYPE, JDBC_RESOURCE, JDBC_SERVERNAME, JDBC_URL, JNDI_NAME, LOCALHOST, MAX_CLUSTERSIZE, MIN_CLUSTERSIZE, NATIVE_VIRTUALIZATION, NODE_ARG, NODE_HOST_ARG, NODE_NAME_FORMAT, NODE_TYPE_SSH, NON_CONNECTOR_RESOURCES, PLAIN_ACTION_REPORT, POOL_NAME, provisionDAS, RESOURCE_TYPE, RESOURCE_XML_PARSERS, SERVICE_NAME, SERVICE_TYPE, SETUP_SSH, SSH_USER_ARG, START_CLUSTER, START_INSTANCE, START_LOCAL_INSTANCE, STOP_CLUSTER, STOP_INSTANCE, TMR_DIR, VM_SHUTDOWN_ARG
 
Constructor Summary
GlassFishPlugin()
           
 
Method Summary
 void associateServices(Service serviceConsumer, ServiceReference svcRef, Service serviceProvider, boolean beforeDeployment, PaaSDeploymentContext dc)
           
 boolean deploy(PaaSDeploymentContext dc, Service service)
           
 void dissociateServices(Service serviceConsumer, ServiceReference svcRef, Service serviceProvider, boolean beforeUndeploy, PaaSDeploymentContext dc)
           
 ServiceDescription getDefaultServiceDescription(String appName, ServiceReference svcRef)
           
 Set<ServiceDescription> getImplicitServiceDescriptions(ReadableArchive readableArchive, String appName, PaaSDeploymentContext context)
           
 ProvisionedService getProvisionedService(ServiceDescription serviceDescription, ServiceInfo serviceInfo)
           
 Set<ServiceReference> getServiceReferences(String appName, ReadableArchive cloudArchive, PaaSDeploymentContext dc)
           
 JavaEEServiceType getServiceType()
           
protected  void handleDeploymentPlan(DeploymentContext dc)
           
 boolean handles(ReadableArchive cloudArchive)
           
 boolean handles(ServiceDescription serviceDescription)
           
 boolean isReferenceTypeSupported(String referenceType)
           
 boolean isRunning(ProvisionedService provisionedSvc)
           
 ProvisionedService match(ServiceReference svcRef)
           
 ProvisionedService provisionService(ServiceDescription serviceDescription, PaaSDeploymentContext pdc)
           
 boolean reassociateServices(Service svcConsumer, Service oldSvcProvider, Service newSvcProvider, ServiceOrchestrator.ReconfigAction reason)
           
 boolean reconfigureServices(ProvisionedService oldPS, ProvisionedService newPS)
           
 ProvisionedService scaleService(ProvisionedService provisionedService, int scaleCount, AllocationStrategy allocStrategy)
           
 ProvisionedService startService(ServiceDescription serviceDescription, ServiceInfo serviceInfo)
           
 boolean stopService(ProvisionedService provisionedService, ServiceInfo serviceInfo)
           
 boolean undeploy(PaaSDeploymentContext dc, Service service)
           
 boolean unprovisionService(ServiceDescription serviceDescription, PaaSDeploymentContext dc)
           
 
Methods inherited from class org.glassfish.paas.spe.common.ServiceProvisioningEngineBase
createService, createService, deleteService, findTemplate, getIndexes, getProvisionedService, getVmByID, startService, stopService
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GlassFishPlugin

public GlassFishPlugin()
Method Detail

getServiceType

public JavaEEServiceType getServiceType()
Specified by:
getServiceType in interface ServicePlugin

handles

public boolean handles(ReadableArchive cloudArchive)
Specified by:
handles in interface ServicePlugin

handles

public boolean handles(ServiceDescription serviceDescription)
Specified by:
handles in interface ServicePlugin

isReferenceTypeSupported

public boolean isReferenceTypeSupported(String referenceType)
Specified by:
isReferenceTypeSupported in interface ServicePlugin

getServiceReferences

public Set<ServiceReference> getServiceReferences(String appName,
                                                  ReadableArchive cloudArchive,
                                                  PaaSDeploymentContext dc)
Specified by:
getServiceReferences in interface ServicePlugin

getDefaultServiceDescription

public ServiceDescription getDefaultServiceDescription(String appName,
                                                       ServiceReference svcRef)
Specified by:
getDefaultServiceDescription in interface ServicePlugin

unprovisionService

public boolean unprovisionService(ServiceDescription serviceDescription,
                                  PaaSDeploymentContext dc)
Specified by:
unprovisionService in interface ServicePlugin

provisionService

public ProvisionedService provisionService(ServiceDescription serviceDescription,
                                           PaaSDeploymentContext pdc)
Specified by:
provisionService in interface ServicePlugin

startService

public ProvisionedService startService(ServiceDescription serviceDescription,
                                       ServiceInfo serviceInfo)
Specified by:
startService in interface ServicePlugin

stopService

public boolean stopService(ProvisionedService provisionedService,
                           ServiceInfo serviceInfo)
Specified by:
stopService in interface ServicePlugin

getProvisionedService

public ProvisionedService getProvisionedService(ServiceDescription serviceDescription,
                                                ServiceInfo serviceInfo)
Specified by:
getProvisionedService in interface ServicePlugin

associateServices

public void associateServices(Service serviceConsumer,
                              ServiceReference svcRef,
                              Service serviceProvider,
                              boolean beforeDeployment,
                              PaaSDeploymentContext dc)
Specified by:
associateServices in interface ServicePlugin
Parameters:
serviceConsumer - Service that consumes the service provided by serviceProvider referred via service-reference
serviceProvider - Provisioned service like DB service or JMS service.
svcRef - Service Reference from GlassFish to that service.
beforeDeployment - indicates if this association is happening before the

handleDeploymentPlan

protected void handleDeploymentPlan(DeploymentContext dc)
                             throws IOException
Throws:
IOException

dissociateServices

public void dissociateServices(Service serviceConsumer,
                               ServiceReference svcRef,
                               Service serviceProvider,
                               boolean beforeUndeploy,
                               PaaSDeploymentContext dc)
Specified by:
dissociateServices in interface ServicePlugin

undeploy

public boolean undeploy(PaaSDeploymentContext dc,
                        Service service)
Specified by:
undeploy in interface ServicePlugin
Overrides:
undeploy in class ServiceProvisioningEngineBase<JavaEEServiceType>

deploy

public boolean deploy(PaaSDeploymentContext dc,
                      Service service)
Specified by:
deploy in interface ServicePlugin
Overrides:
deploy in class ServiceProvisioningEngineBase<JavaEEServiceType>

isRunning

public boolean isRunning(ProvisionedService provisionedSvc)
Specified by:
isRunning in interface ServicePlugin

match

public ProvisionedService match(ServiceReference svcRef)
Specified by:
match in interface ServicePlugin

getImplicitServiceDescriptions

public Set<ServiceDescription> getImplicitServiceDescriptions(ReadableArchive readableArchive,
                                                              String appName,
                                                              PaaSDeploymentContext context)
Specified by:
getImplicitServiceDescriptions in interface ServicePlugin

scaleService

public ProvisionedService scaleService(ProvisionedService provisionedService,
                                       int scaleCount,
                                       AllocationStrategy allocStrategy)
Specified by:
scaleService in interface ServicePlugin

reconfigureServices

public boolean reconfigureServices(ProvisionedService oldPS,
                                   ProvisionedService newPS)
Specified by:
reconfigureServices in interface ServicePlugin

reassociateServices

public boolean reassociateServices(Service svcConsumer,
                                   Service oldSvcProvider,
                                   Service newSvcProvider,
                                   ServiceOrchestrator.ReconfigAction reason)
Specified by:
reassociateServices in interface ServicePlugin


Copyright © 2012. All Rights Reserved.