001    /*
002     * Copyright 2005-2007 The Kuali Foundation
003     * 
004     * 
005     * Licensed under the Educational Community License, Version 2.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/ecl2.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 org.kuali.rice.kew.actions.asyncservices;
018    
019    import java.io.Serializable;
020    
021    import org.kuali.rice.kew.util.Utilities;
022    
023    
024    /**
025     * Used for mass actions from the action list.
026     * Represents the definition of an Action invocation against an action item.
027     * 
028     * @author Kuali Rice Team (rice.collab@kuali.org)
029     *
030     */
031    public class ActionInvocation implements Serializable {
032    
033            private static final long serialVersionUID = -3828610998370758705L;
034            private final Long actionItemId;
035            private final String actionCode;
036            
037            public ActionInvocation(Long actionItemId, String actionCode) {
038                    if (actionItemId == null) {
039                            throw new IllegalArgumentException("Action Item Id cannot be null.");
040                    }
041                    if (Utilities.isEmpty(actionCode)) {
042                            throw new IllegalArgumentException("Action Code cannot be empty.");
043                    }
044                    this.actionItemId = actionItemId;
045                    this.actionCode = actionCode;
046            }
047                    
048            public String getActionCode() {
049                    return actionCode;
050            }
051            
052            public Long getActionItemId() {
053                    return actionItemId;
054            }
055                    
056    }