/* * Copyright 2010 Chad Retz * * Licensed under the Apache License, Version 2.0 (the "License"); you may not * use this file except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations under * the License. */ package org.statmantis.model; import java.util.Map; import org.statmantis.util.EnumUtils; /** * Type for a {@link Transaction} * * @author Chad Retz */ public enum TransactionType implements RetrosheetModel { ASSIGN("A", "Assigned from one team to another without compensation"), CONDITIONAL("C", "Conditional deal"), CONDITIONAL_RETURN("Cr", "Returned to original team after conditional deal"), RULE_5_DRAFT("D", "Rule 5 draft pick"), AMATEUR_DRAFT("Da", "Amateur draft pick"), FIRST_YEAR_DRAFT("Df", "First year draft pick"), MINOR_DRAFT("Dm", "Minor league draft pick"), AMATEUR_DRAFT_UNSIGNED("Dn", "Amateur draft pick but did not sign"), DRAFT_RETURN("Dr", "Returned to original team after draft selection"), SPECIAL_DRAFT("Ds", "Special draft pick"), AMATEUR_DRAFT_VOID("Dv", "Amateur draft pick voided"), FREE_AGENT("F", "Free agent signing"), FREE_AGENT_AMATEUR("Fa", "Amateur free agent signing"), FREE_AGENT_AMATEUR_BONUS("Fb", "Amateur free agent \"bonus baby\" signing"), FREE_AGENT_COMPENSATION("Fc", "Free agent compensation pick"), FREE_AGENT_GRANTED("Fg", "Free agent granted"), FREE_AGENT_FIRST("Fo", "Free agent signing with first ML team"), FREE_AGENT_VOID("Fv", "Free agent signing voided"), BEREAVEMENT("Hb", "Went on bereavement list"), BEREAVEMENT_RETURN("Hbr", "Came off the bereavement list"), INELIGIBLE("Hd", "Declared ineligible"), INELIGIBLE_RETURN("Hdr", "Reinstated from ineligible list"), DEMOTE("Hf", "Demoted to the minor league"), PROMOTE("Hfr", "Promoted to the major league"), HELD_OUT("Hh", "Held out"), HELD_OUT_RETURN("Hhr", "Ended hold out"), DISABLE("Hi", "Went on disabled list"), DISABLE_RETURN("Hir", "Came off disabled list"), MILITARY("Hm", "Went into military service"), MILITARY_RETURN("Hmr", "Returned from military service"), SUSPEND("Hs", "Suspended"), SUSPEND_RETURN("Hsr", "Reinstated from suspension"), UNAVAILABLE("Hu", "Unavailable but not on DL"), UNAVAILABLE_RETURN("Hur", "Returned from being unavailable"), RETIRE("Hv|Z", "Retired"), RETIRE_RETURN("Hvr|Zr", "Unretired"), JUMP("J", "Jumped teams"), JUMP_RETURN("Jr", "Returned after jumping"), LOAN("L", "Loaned"), LOAN_RETURN("Lr", "Returned from loan"), MINOR_LEAGUE_RIGHTS("M", "Obtained rights when entering minor league agreement"), MINOR_LEAGUE_RIGHTS_RETURN("Mr", "Rights returned after agreement ended"), PURCHASE("P", "Purchase"), PURCHASE_RETURN("Pr", "Returned after purchase"), PURCHASE_VOID("Pv", "Purchase voided"), RELEASE("R", "Released"), TRADE("T", "Traded"), TRADE_NO_REPORT("Tn", "Traded but refused to report"), TRADE_ADDED("Tp", "Added to trade"), TRADE_RETURN("Tr", "Returned after trade"), TRADE_VOID("Tv", "Trade voided"), UNKNOWN("U", "Unknown (could have been two separate transactions)"), LEAGUE_CONTROL("Vg", "Player assigned to league control"), LEAGUE_ASSIGN("V", "Player purchased or assigned from league"), WAIVER("W", "Waiver pick"), WAIVER_FIRST_YEAR("Wf", "First year waiver pick"), WAIVER_RETURN("Wr", "Returned after waiver pick"), WAIVER_VOID("Wv", "Waiver pick voided"), EXPANSION_DRAFT("X", "Expansion draft pick"), EXPANSION_DRAFT_ADDED("Xp", "Added as expansion pick at a later date"); public static final int MAX_LENGTH = 26; public static final Map<String, TransactionType> TYPES; static { TYPES = EnumUtils.mapEnumerates(TransactionType.class); } private final String retroId; private final String friendlyName; private TransactionType(String retroId, String friendlyName) { this.retroId = retroId; this.friendlyName = friendlyName; } @Override public String getRetroId() { return retroId; } public String getFriendlyName() { return friendlyName; } }