001/**
002 * Copyright 2005-2017 The Kuali Foundation
003 *
004 * Licensed under the Educational Community License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 * http://www.opensource.org/licenses/ecl2.php
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 * See the License for the specific language governing permissions and
014 * limitations under the License.
015 */
016package org.kuali.rice.kew.framework.postprocessor;
017
018import java.io.Serializable;
019
020
021
022/**
023 * Base event interface for events emitted from the workflow engine
024 * and hooked by the {@link PostProcessor}
025 * @author Kuali Rice Team (rice.collab@kuali.org)
026 */
027public interface IDocumentEvent extends Serializable {
028  public static final String ROUTE_LEVEL_CHANGE = "rt_lvl_change";
029  public static final String ROUTE_STATUS_CHANGE = "rt_status_change";
030  public static final String DELETE_CHANGE = "delete_document";
031  public static final String ACTION_TAKEN = "action_taken";
032  public static final String BEFORE_PROCESS = "before_process";
033  public static final String AFTER_PROCESS = "after_process";
034  public static final String LOCK_DOCUMENTS = "lock_documents";
035
036  /**
037   * @return the code of this document event 
038   */
039  public String getDocumentEventCode();
040
041  /**
042   * @return the document id for which this event was generated
043   */
044  public String getDocumentId();
045
046  /**
047   * @return the application document id registered for this document when it was created
048   */
049  public String getAppDocId();
050}