/* * 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.stat.common; import java.util.Set; import org.statmantis.model.Play; import org.statmantis.model.PlayType; import org.statmantis.stat.StatisticInfo; import org.statmantis.stat.StatisticType; import com.google.common.collect.Sets; @StatisticInfo( name = "Hits", abbreviations = "H", types = { StatisticType.BATTING, StatisticType.PITCHING }) public class Hits extends PitcherAndBatterBasedPlayStatistic<Integer> { private static final Set<PlayType> VALID_PLAY_TYPES = Sets.newHashSet( PlayType.SINGLE, PlayType.DOUBLE, PlayType.TRIPLE, PlayType.GROUND_RULE_DOUBLE, PlayType.HOME_RUN); private int hits = 0; @Override public void applyPlay(Play play) { if (isPlayApplicable(play) && VALID_PLAY_TYPES.contains( play.getEvent().getPlayType())) { hits++; } } @Override public Integer getCurrentValue() { return hits; } }