| <cffunction name="init" access="public" returntype="ContentItemContext" hint="Constructor."> <cfargument name="draftState" type="DraftState" required="true" /> <cfargument name="reviewState" type="ReviewState" required="true" /> <cfargument name="approvePublishState" type="ApprovePublishState" required="true" /> <cfargument name="publishedState" type="PublishedState" required="true" /> <cfargument name="initialState" type="string" required="true" /> <cfset variables.instance.draftState = arguments.draftState /> <cfset variables.instance.reviewState = arguments.reviewState /> <cfset variables.instance.approvePublishState = arguments.approvePublishState /> <cfset variables.instance.publishedState = arguments.publishedState /> <cfset createStateNameMappings() /> <cfset setStateByName(arguments.initialState) /> <cfreturn this /> </cffunction> <cffunction name="save" access="public" returntype="void" output="true" hint=""> <cfset var local = structNew() /> <cfset getCurrentState().save(this) /> </cffunction> <cffunction name="approve" access="public" returntype="void" output="true" hint=""> <cfset var local = structNew() /> <cfset getCurrentState().approve(this) /> </cffunction> <cffunction name="reject" access="public" returntype="void" output="true" hint=""> <cfset var local = structNew() /> <cfset getCurrentState().reject(this) /> </cffunction>
<!--- State-related methods ---> <cffunction name="createStateNameMappings" access="private" returntype="void" output="false" hint=""> <cfset var local = structNew() /> <cfset variables.stateMappings['draft'] = variables.instance.draftState /> <cfset variables.stateMappings['review'] = variables.instance.reviewState /> <cfset variables.stateMappings['publishApproval'] = variables.instance.approvePublishState /> <cfset variables.stateMappings['published'] = variables.instance.publishedState /> </cffunction>
<cffunction name="setStateByName" access="public" returntype="void" output="false" hint=""> <cfargument name="stateName" type="string" required="true" /> <cfset setCurrentState(getStateByName(arguments.stateName)) /> </cffunction>
<cffunction name="getStateByName" access="private" returntype="AbstractContentState" output="false" hint="">
|
| 共9页: 上一页 [1] [2] [3] [4] 5 [6] [7] [8] [9] 下一页 |
评论加载中…