Class SubscriptionChainLogic
java.lang.Object
com.echothree.util.server.control.BaseLogic
com.echothree.model.control.chain.server.logic.BaseChainLogic
com.echothree.model.control.subscription.server.logic.SubscriptionChainLogic
-
Method Summary
Modifier and TypeMethodDescriptionprotected ChainInstance
createChainInstance
(ExecutionErrorAccumulator eea, String chainKindName, String chainTypeName, Subscription subscription, BasePK createdBy) createChainInstance is different than the version in BaseChainLogic, it requires a Subscription parameter.protected ChainInstance
createSubscriptionChainInstance
(ExecutionErrorAccumulator eea, String chainTypeName, Subscription subscription, BasePK createdBy) createSubscriptionExpirationChainInstance
(ExecutionErrorAccumulator eea, Subscription subscription, BasePK createdBy) createSubscriptionExpirationWarningChainInstance
(ExecutionErrorAccumulator eea, Subscription subscription, BasePK createdBy) createSubscriptionInitialChainInstance
(ExecutionErrorAccumulator eea, Subscription subscription, BasePK createdBy) createSubscriptionRenewalChainInstance
(ExecutionErrorAccumulator eea, Subscription subscription, BasePK createdBy) TODO: Consider the RemainingTime in the SubscriptionDetail when choosing the Chain to use.static SubscriptionChainLogic
Methods inherited from class com.echothree.model.control.chain.server.logic.BaseChainLogic
countChainInstanceEntityRoles, countChainInstanceEntityRoles, countChainInstanceEntityRolesByChainEntityRoleType, countChainInstanceEntityRolesByEntityInstance, createChainInstance, createChainInstance, createChainInstance, deleteChainInstancedByChainEntityRoleTypeAndEntityInstance, getChain, getChainEntityRoleTypeByName, getChainKindByName, getChainTypeByName, getChainTypeByName
Methods inherited from class com.echothree.util.server.control.BaseLogic
addExecutionError, addSecurityMessage, getEntityInstanceByBaseEntity, getEntityInstanceByBasePK, getSession, handleExecutionError, handleSecurityMessage, hasExecutionErrors
-
Method Details
-
getInstance
-
createChainInstance
protected ChainInstance createChainInstance(ExecutionErrorAccumulator eea, String chainKindName, String chainTypeName, Subscription subscription, BasePK createdBy) createChainInstance is different than the version in BaseChainLogic, it requires a Subscription parameter. Subscriptions are allowed to override the Chain being used in each SubscriptionType, so this takes that into account when choosing a Chain. If there is no SubscriptionTypeChain, then we fall back to the default for the ChainType, following the normal rules that take OfferChainTypes into account as well. If the chainTypeName == RENEWAL, then we immediately fall back to the default for the ChainType. TODO: RENEWAL should really be based on the amount of time remaining in the Subscription, and not just fall back to the default. getSubscriptionTypeChainsBySubscriptionTypeAndChainType(...) could order by the remaining time, and then search for the one that's the best fit. -
createSubscriptionChainInstance
protected ChainInstance createSubscriptionChainInstance(ExecutionErrorAccumulator eea, String chainTypeName, Subscription subscription, BasePK createdBy) -
createSubscriptionInitialChainInstance
public ChainInstance createSubscriptionInitialChainInstance(ExecutionErrorAccumulator eea, Subscription subscription, BasePK createdBy) -
createSubscriptionExpirationWarningChainInstance
public ChainInstance createSubscriptionExpirationWarningChainInstance(ExecutionErrorAccumulator eea, Subscription subscription, BasePK createdBy) -
createSubscriptionRenewalChainInstance
public ChainInstance createSubscriptionRenewalChainInstance(ExecutionErrorAccumulator eea, Subscription subscription, BasePK createdBy) TODO: Consider the RemainingTime in the SubscriptionDetail when choosing the Chain to use. -
createSubscriptionExpirationChainInstance
public ChainInstance createSubscriptionExpirationChainInstance(ExecutionErrorAccumulator eea, Subscription subscription, BasePK createdBy)
-