001: /*
002: * Copyright 2005-2006 The Kuali Foundation.
003: *
004: *
005: * Licensed under the Educational Community License, Version 1.0 (the "License");
006: * you may not use this file except in compliance with the License.
007: * You may obtain a copy of the License at
008: *
009: * http://www.opensource.org/licenses/ecl1.php
010: *
011: * Unless required by applicable law or agreed to in writing, software
012: * distributed under the License is distributed on an "AS IS" BASIS,
013: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014: * See the License for the specific language governing permissions and
015: * limitations under the License.
016: */
017: package edu.iu.uis.eden.clientapp;
018:
019: import edu.iu.uis.eden.DocumentRouteLevelChange;
020: import edu.iu.uis.eden.DocumentRouteStatusChange;
021: import edu.iu.uis.eden.exception.ResourceUnavailableException;
022:
023: /**
024: * Original PostProcessor remote interface.
025: *
026: * @author rkirkend
027: *
028: * @deprecated uses PostProcessorRemote
029: */
030: public interface IPostProcessorBusinessLogic {
031: /**
032: * @param locator Provides runtime/deployment information to the businessclass
033: */
034: public void setLocator(ResourceLocator locator);
035:
036: /**
037: * Return the ResourceLocator set by the ControlledPostProcessor bean
038: * @return
039: */
040: public ResourceLocator getLocator();
041:
042: /**
043: * The document has changed route status. The docEvent contains the information about the change.
044: * This method should do what ever is appropriate for various route status changes to a document.
045: * The method should return true if the change is correct and all application actions as a result
046: * of the change are successful. It should return false if the application considers this an
047: * incorrect change.
048: *
049: * The method can throw a ResourceUnavailableException in order to get EDEN to requeue the
050: * document and try again later.
051: * @param statusChangeEvent
052: * @param msg any error message to be propagated back to users should be set here
053: * @return true if the status change is correct and application actions are successful
054: * @throws java.lang.Exception A general Exception will cause EDEN to put the document into Exception routing
055: * @throws ResourceUnavailableException EDEN will requeue the document and try the change again
056: * later if this exception is thrown
057: * @see DocumentRouteStatusChange
058: */
059: public boolean doRouteStatusChange(
060: DocumentRouteStatusChange statusChangeEvent,
061: StringBuffer msg) throws java.lang.Exception;
062:
063: /**
064: * The document has changed route level. The docEvent contains the information about the change.
065: * This method should do what ever is appropriate for various route level changes to a document.
066: * The method should return true if the change is correct and all application actions as a result
067: * of the change are successful. It should return false if the application considers this an
068: * incorrect change.
069: *
070: * The method can throw a ResourceUnavailableException in order to get EDEN to requeue the
071: * document and try again later.
072: * @param levelChangeEvent
073: * @param msg any error message to be propagated back to users should be set here
074: * @return true if the status change is correct and application actions are successful
075: * @throws java.lang.Exception A general Exception will cause EDEN to put the document into Exception routing
076: * @throws ResourceUnavailableException EDEN will requeue the document and try the change again
077: * later if this exception is thrown
078: * @see DocumentRouteLevelChange
079: */
080: public boolean doRouteLevelChange(
081: DocumentRouteLevelChange levelChangeEvent,
082: StringBuffer parm2) throws java.lang.Exception;
083:
084: /**
085: * User is requesting SuperUser authority for the given document. The application should make
086: * any authorization checks appropriate and return true if the user is authorized.
087: * @param routeHeaderId document being accessed
088: * @param user user attempting SuperUser action
089: * @return true if the user is granted SuperUser authority
090: * @throws java.lang.Exception
091: */
092: /*
093: public boolean verifySUAuthority(Long routeHeaderId, UserIdDO user)
094: throws java.lang.Exception;
095: */
096:
097: /**
098: * Eden is signaling that the document should be deleted. The application can reject this by
099: * returning false. If the EdenException is thrown the docuemnt will go to exception routing. If
100: * a ResourceUnavailableException is thrown, the doc will be requeued and will try again later to
101: * delete the document.
102: * @param event
103: * @param message
104: * @return
105: * @throws java.lang.Exception A general Exception will cause EDEN to put the document into Exception routing
106: * @throws ResourceUnavailableException EDEN will requeue the document and try the change again
107: */
108: public boolean doDeleteRouteHeader(DeleteEvent event,
109: StringBuffer message) throws java.lang.Exception;
110:
111: public String getVersion() throws Exception;
112: }
|