atg.svc.clicktoconnect
Class C2CServiceEnvironmentMonitor

java.lang.Object
  extended by atg.nucleus.logging.VariableArgumentApplicationLoggingImpl
      extended by atg.nucleus.GenericService
          extended by atg.svc.agent.environment.EnvironmentMonitor
              extended by atg.svc.clicktoconnect.C2CServiceEnvironmentMonitor
All Implemented Interfaces:
atg.naming.NameContextBindingListener, atg.naming.NameContextElement, atg.naming.NameResolver, atg.nucleus.AdminableService, atg.nucleus.logging.ApplicationLogging, atg.nucleus.logging.ApplicationLoggingSender, atg.nucleus.logging.TraceApplicationLogging, atg.nucleus.logging.VariableArgumentApplicationLogging, atg.nucleus.naming.ComponentNameResolver, atg.nucleus.Service, atg.nucleus.ServiceListener, java.util.EventListener

public class C2CServiceEnvironmentMonitor
extends EnvironmentMonitor

This environment monitor generates change details when a new click to connect request is received.

A profile change detail is generated based on the customer profile id in the C2CRequestData. If no profileId is provided, a new profile change detail is generated.

In postApplyChanges the C2CRequestData object is saved in the CallState


Field Summary
static java.lang.String CLASS_VERSION
          Class version string
protected  atg.clicktoconnect.C2CSessionDataPropertyManager mC2CSessionDataPropertyManager
           
protected  C2CTools mC2CTools
           
protected  LandingPageManager mLandingPageManager
           
 
Fields inherited from class atg.svc.agent.environment.EnvironmentMonitor
mEnvironmentTools
 
Fields inherited from class atg.nucleus.GenericService
SERVICE_INFO_KEY
 
Fields inherited from interface atg.nucleus.logging.TraceApplicationLogging
DEFAULT_LOG_TRACE_STATUS
 
Fields inherited from interface atg.nucleus.logging.ApplicationLogging
DEFAULT_LOG_DEBUG_STATUS, DEFAULT_LOG_ERROR_STATUS, DEFAULT_LOG_INFO_STATUS, DEFAULT_LOG_WARNING_STATUS
 
Constructor Summary
C2CServiceEnvironmentMonitor()
           
 
Method Summary
 void applyChanges(EnvironmentChangeState pEnvironmentChangeState)
          Noop impl
protected  void generateChangeDetailsForChangeKey(java.lang.String pChangeKey, EnvironmentChangeState pEnvironmentChangeState)
          A profile change detail is generated based on the customer profile id in the C2CRequestData, which is passed in as an input parameter within the environment change state.
protected  void generateDependentChangeDetails(EnvironmentChangeDetail pEnvironmentChangeDetail, EnvironmentChangeState pEnvironmentChangeState)
          A no op impl
 atg.clicktoconnect.C2CSessionDataPropertyManager getC2CSessionDataPropertyManager()
          Returns a reference to the platform click to connect property manager
 C2CTools getC2CTools()
          Returns a reference to the click to connect tools component
 java.lang.Object getEnvironmentObject(java.lang.String pEnvironmentObjectName)
          A no op impl.
 LandingPageManager getLandingPageManager()
           
 void postApplyChanges(EnvironmentChangeState pEnvironmentChangeState)
          For click to connect new calls, this method will save the C2CRequestData object in the current call state and call the LandingPageManger to apply the landing page
 void setC2CSessionDataPropertyManager(atg.clicktoconnect.C2CSessionDataPropertyManager pC2CSessionDataPropertyManager)
           
 void setC2CTools(C2CTools pTools)
           
 void setLandingPageManager(LandingPageManager pLandingPageManager)
           
 
Methods inherited from class atg.svc.agent.environment.EnvironmentMonitor
createWarningsForEnvironmentChange, generateChangeDetails, getAgentMessagingTools, getEnvironmentTools, initializeDefaultsForProfile, preApplyChanges, revertChanges, setAgentMessagingTools, setEnvironmentTools
 
Methods inherited from class atg.nucleus.GenericService
addLogListener, createAdminServlet, doStartService, doStopService, getAbsoluteName, getAdminServlet, getLoggingForVlogging, getLogListenerCount, getLogListeners, getName, getNameContext, getNucleus, getRoot, getServiceConfiguration, getServiceInfo, isLoggingDebug, isLoggingError, isLoggingInfo, isLoggingTrace, isLoggingWarning, isRunning, logDebug, logDebug, logDebug, logError, logError, logError, logInfo, logInfo, logInfo, logTrace, logTrace, logTrace, logWarning, logWarning, logWarning, nameContextElementBound, nameContextElementUnbound, removeLogListener, resolveName, resolveName, resolveName, resolveName, sendLogEvent, setLoggingDebug, setLoggingError, setLoggingInfo, setLoggingTrace, setLoggingWarning, setNucleus, setServiceInfo, startService, stopService
 
Methods inherited from class atg.nucleus.logging.VariableArgumentApplicationLoggingImpl
vlogDebug, vlogDebug, vlogDebug, vlogDebug, vlogError, vlogError, vlogError, vlogError, vlogInfo, vlogInfo, vlogInfo, vlogInfo, vlogTrace, vlogTrace, vlogTrace, vlogTrace, vlogWarning, vlogWarning, vlogWarning, vlogWarning
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CLASS_VERSION

public static final java.lang.String CLASS_VERSION
Class version string

See Also:
Constant Field Values

mC2CTools

protected C2CTools mC2CTools

mLandingPageManager

protected LandingPageManager mLandingPageManager

mC2CSessionDataPropertyManager

protected atg.clicktoconnect.C2CSessionDataPropertyManager mC2CSessionDataPropertyManager
Constructor Detail

C2CServiceEnvironmentMonitor

public C2CServiceEnvironmentMonitor()
Method Detail

getC2CTools

public C2CTools getC2CTools()
Returns a reference to the click to connect tools component

Returns:
C2CTools

setC2CTools

public void setC2CTools(C2CTools pTools)

getLandingPageManager

public LandingPageManager getLandingPageManager()

setLandingPageManager

public void setLandingPageManager(LandingPageManager pLandingPageManager)

getC2CSessionDataPropertyManager

public atg.clicktoconnect.C2CSessionDataPropertyManager getC2CSessionDataPropertyManager()
Returns a reference to the platform click to connect property manager

Returns:
C2CSessionDataPropertyManager

setC2CSessionDataPropertyManager

public void setC2CSessionDataPropertyManager(atg.clicktoconnect.C2CSessionDataPropertyManager pC2CSessionDataPropertyManager)

generateChangeDetailsForChangeKey

protected void generateChangeDetailsForChangeKey(java.lang.String pChangeKey,
                                                 EnvironmentChangeState pEnvironmentChangeState)
                                          throws atg.svc.agent.environment.EnvironmentChangeDetailConflict,
                                                 EnvironmentException
A profile change detail is generated based on the customer profile id in the C2CRequestData, which is passed in as an input parameter within the environment change state.

If no profileId is provided in the C2CRequestData object, a new profile change detail is generated.

Specified by:
generateChangeDetailsForChangeKey in class EnvironmentMonitor
Throws:
atg.svc.agent.environment.EnvironmentChangeDetailConflict
EnvironmentException
See Also:
C2CConstants.ENV_CHG_START_NEW_C2C_CALL, C2CConstants.ENV_CHG_START_NEW_C2C_CALL_C2CREQUESTDATA_PARAM, C2CRequestData

generateDependentChangeDetails

protected void generateDependentChangeDetails(EnvironmentChangeDetail pEnvironmentChangeDetail,
                                              EnvironmentChangeState pEnvironmentChangeState)
                                       throws atg.svc.agent.environment.EnvironmentChangeDetailConflict,
                                              EnvironmentException
A no op impl

Specified by:
generateDependentChangeDetails in class EnvironmentMonitor
Throws:
atg.svc.agent.environment.EnvironmentChangeDetailConflict
EnvironmentException

applyChanges

public void applyChanges(EnvironmentChangeState pEnvironmentChangeState)
                  throws EnvironmentException
Noop impl

Specified by:
applyChanges in class EnvironmentMonitor
Throws:
EnvironmentException
See Also:
EnvironmentTools.applyChanges(EnvironmentChangeState), EnvironmentMonitor.revertChanges(EnvironmentChangeState)

getEnvironmentObject

public java.lang.Object getEnvironmentObject(java.lang.String pEnvironmentObjectName)
                                      throws EnvironmentException
A no op impl. returns null always

Specified by:
getEnvironmentObject in class EnvironmentMonitor
Returns:
environment object for the given name
Throws:
EnvironmentException

postApplyChanges

public void postApplyChanges(EnvironmentChangeState pEnvironmentChangeState)
                      throws EnvironmentException
For click to connect new calls, this method will save the C2CRequestData object in the current call state and call the LandingPageManger to apply the landing page

Overrides:
postApplyChanges in class EnvironmentMonitor
Parameters:
pEnvironmentChangeState -
Throws:
EnvironmentException
See Also:
LandingPageManager.applyLandingPage(C2CRequestData)