is.idega.idegaweb.golf.business
Class ScorecardBusinessBean

java.lang.Object
  extended by com.idega.business.IBOServiceBean
      extended by is.idega.idegaweb.golf.business.ScorecardBusinessBean
All Implemented Interfaces:
com.idega.business.IBOService, ScorecardBusiness, java.io.Serializable, java.rmi.Remote, javax.ejb.EJBObject, javax.ejb.EnterpriseBean, javax.ejb.SessionBean

public class ScorecardBusinessBean
extends com.idega.business.IBOServiceBean
implements ScorecardBusiness

Author:
laddi
See Also:
Serialized Form

Constructor Summary
ScorecardBusinessBean()
           
 
Method Summary
 void approveScorecard(java.lang.String uniqueID)
           
 Scorecard getBestRoundAfterDate(int memberID, java.sql.Date date)
           
 int getDifference(Scorecard scorecard)
           
 int getFieldPar(Scorecard scorecard)
           
 float getHandicapAverage(java.util.Collection<Scorecard> scoreCards)
           
 Scorecard getLastPlayedRound(int memberID)
           
 Member getMember(java.lang.Object pk)
           
 int getNumberOfHolesPlayed(Scorecard scorecard)
           
 int getNumberOfRounds(int memberID)
           
 int getNumberOfRoundsAfterDate(int memberID, java.sql.Date date)
           
 double getPointsAverage(int memberID)
           
 Scorecard getScorecard(Member member, TournamentRound round)
           
 Scorecard getScorecard(java.lang.Object scorecardPK)
           
 Scorecard getScorecardByUniqueID(java.lang.String uniqueID)
           
protected  ScorecardHome getScorecardHome()
           
 java.util.Collection<Scorecard> getScorecards(Member member, ScorecardStatus status)
           
 java.util.Collection<Scorecard> getScorecards(java.lang.Object memberPK)
           
 java.util.Collection<Scorecard> getScorecards(java.lang.Object memberPK, java.sql.Date toDate, int numberOfRecords, boolean ascending)
           
 java.util.Collection<Scorecard> getScorecards(java.lang.Object memberPK, int numberOfRecords, boolean ascending)
           
 java.util.Collection<Scorecard> getScorecardsByWriter(Member member, java.util.List<ScorecardStatus> statuses)
           
 java.util.List<Scorecard> getScoreCardsClosestToHandicapAverage(java.util.Collection<Scorecard> scoreCards)
           
 java.util.List<Scorecard> getScoreCardsClosestToHandicapAverage(java.lang.String memberPrimaryKey)
           
 java.util.TreeMap<java.lang.Float,java.util.List<Scorecard>> getSortedScoreCards(java.util.Collection<Scorecard> scoreCards)
          Groups Scorecards by Scorecard.getHandicapAfter().
 int getStartingHole(Scorecard scorecard)
           
 java.util.Collection getStatistics(Scorecard scorecard)
           
 java.util.Collection<HoleStatistic> getStatistics(Tournament tournament, TournamentRound round, float handicapFrom, float handicapTo)
           
 java.util.Map getStatisticsMap(Scorecard scorecard, java.util.Collection tees)
           
 Stroke getStroke(Scorecard scorecard, Tee tee)
           
 int getStrokeCount(Scorecard scorecard)
           
 java.util.Collection getStrokes(Scorecard scorecard)
           
 java.util.Map<java.lang.Integer,Stroke> getStrokesMap(Scorecard scorecard)
           
 java.util.Map getStrokesMap(Scorecard scorecard, java.util.Collection tees)
           
 Tee getTee(Field field, TeeColor teeColor, int holeNumber)
           
 void handleTimeouts()
           
 boolean hasScorecards(int memberID)
           
 void rejectScorecard(java.lang.String uniqueID)
           
 Scorecard storeScorecard(Member member, float handicap, Scorecard scorecard, Field field, TeeColor teeColor, int tournamentRoundID, java.sql.Timestamp timestamp, java.util.Collection tees, int[] strokes, int[] points, boolean mobileEntry, Member cardWriter)
           
 void storeStatistics(Scorecard scorecard, java.util.Collection tees, boolean[] hitFairway, boolean[] greenInRegulation, int[] putts, int[] drives)
           
 void storeStrokes(Scorecard scorecard, java.lang.String[] holes, java.lang.String[] strokes)
           
 
Methods inherited from class com.idega.business.IBOServiceBean
addActionListener, debug, ejbActivate, ejbCreate, ejbCreateIBO, ejbHomeCreateIBO, ejbHomeIboCreate, ejbPassivate, ejbPostCreate, ejbPostCreateIBO, ejbRemove, getAccessController, getBundle, getBundleIdentifier, getCurrentUser, getDebugLogLevel, getDefaultLogLevel, getEJBHome, getEJBObject, getErrorLogLevel, getHandle, getIDOHome, getIWApplicationContext, getIWMainApplication, getLocalizedServiceDescription, getLogger, getPrimaryKey, getServiceDescription, getServiceInstance, getSessionContext, getSessionInstance, initializeBean, isIdentical, log, log, log, log, logConfig, logDebug, logError, logSevere, logWarning, remove, setIWApplicationContext, setSessionContext, triggerActionEvent, triggerActionEvent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.idega.business.IBOService
addActionListener, getIWApplicationContext, getLocalizedServiceDescription, getServiceDescription, initializeBean
 
Methods inherited from interface javax.ejb.EJBObject
getEJBHome, getHandle, getPrimaryKey, isIdentical, remove
 

Constructor Detail

ScorecardBusinessBean

public ScorecardBusinessBean()
Method Detail

getNumberOfRoundsAfterDate

public int getNumberOfRoundsAfterDate(int memberID,
                                      java.sql.Date date)
Specified by:
getNumberOfRoundsAfterDate in interface ScorecardBusiness
See Also:
getNumberOfRoundsAfterDate(int, java.sql.Date)

getNumberOfRounds

public int getNumberOfRounds(int memberID)
Specified by:
getNumberOfRounds in interface ScorecardBusiness
See Also:
getNumberOfRounds(int)

hasScorecards

public boolean hasScorecards(int memberID)
Specified by:
hasScorecards in interface ScorecardBusiness
See Also:
hasScorecards(int)

getBestRoundAfterDate

public Scorecard getBestRoundAfterDate(int memberID,
                                       java.sql.Date date)
Specified by:
getBestRoundAfterDate in interface ScorecardBusiness
See Also:
getBestRoundAfterDate(int, java.sql.Date)

getLastPlayedRound

public Scorecard getLastPlayedRound(int memberID)
                             throws javax.ejb.FinderException
Specified by:
getLastPlayedRound in interface ScorecardBusiness
Throws:
javax.ejb.FinderException
See Also:
getLastPlayedRound(int)

getPointsAverage

public double getPointsAverage(int memberID)
Specified by:
getPointsAverage in interface ScorecardBusiness
See Also:
getPointsAverage(int)

getScorecard

public Scorecard getScorecard(java.lang.Object scorecardPK)
Specified by:
getScorecard in interface ScorecardBusiness
See Also:
getScorecard(java.lang.Object)

getScorecardByUniqueID

public Scorecard getScorecardByUniqueID(java.lang.String uniqueID)
Specified by:
getScorecardByUniqueID in interface ScorecardBusiness
See Also:
getScorecardByUniqueID(java.lang.String)

getScorecard

public Scorecard getScorecard(Member member,
                              TournamentRound round)
Specified by:
getScorecard in interface ScorecardBusiness
See Also:
getScorecard(java.lang.Object)

getScorecards

public java.util.Collection<Scorecard> getScorecards(java.lang.Object memberPK)
Specified by:
getScorecards in interface ScorecardBusiness
Parameters:
memberPK - is EJBLocalObject.getPrimaryKey() to filter by, not null;
Returns:
entities by criteria or Collections.emptyList() on failure;

getScorecards

public java.util.Collection<Scorecard> getScorecards(java.lang.Object memberPK,
                                                     int numberOfRecords,
                                                     boolean ascending)
Specified by:
getScorecards in interface ScorecardBusiness
Parameters:
memberPK - is EJBLocalObject.getPrimaryKey() to filter by, not null;
numberOfRecords - is number of entries to get from data source, skipped if -1;
ascending - tells if results should be sorted by Scorecard.getScorecardDate() in ascending order;
Returns:
entities by criteria or Collections.emptyList() on failure;

getScorecards

public java.util.Collection<Scorecard> getScorecards(java.lang.Object memberPK,
                                                     java.sql.Date toDate,
                                                     int numberOfRecords,
                                                     boolean ascending)
Specified by:
getScorecards in interface ScorecardBusiness
Parameters:
memberPK - is EJBLocalObject.getPrimaryKey() to filter by, not null;
toDate - is ceiling of Scorecard.getScorecardDate(), skipped if null;
numberOfRecords - is number of entries to get from data source, skipped if -1;
ascending - tells if results should be sorted by Scorecard.getScorecardDate() in ascending order;
Returns:
entities by criteria or Collections.emptyList() on failure;

getScorecards

public java.util.Collection<Scorecard> getScorecards(Member member,
                                                     ScorecardStatus status)
Specified by:
getScorecards in interface ScorecardBusiness
See Also:
getScorecards(java.lang.Object)

getScorecardsByWriter

public java.util.Collection<Scorecard> getScorecardsByWriter(Member member,
                                                             java.util.List<ScorecardStatus> statuses)
Specified by:
getScorecardsByWriter in interface ScorecardBusiness
See Also:
getScorecardsByWriter(is.idega.idegaweb.golf.entity.Member, java.util.List)

approveScorecard

public void approveScorecard(java.lang.String uniqueID)
Specified by:
approveScorecard in interface ScorecardBusiness
See Also:
approveScorecard(java.lang.String)

rejectScorecard

public void rejectScorecard(java.lang.String uniqueID)
Specified by:
rejectScorecard in interface ScorecardBusiness
See Also:
rejectScorecard(java.lang.String)

getStrokes

public java.util.Collection getStrokes(Scorecard scorecard)
Specified by:
getStrokes in interface ScorecardBusiness
See Also:
getStrokes(is.idega.idegaweb.golf.entity.Scorecard)

getStrokesMap

public java.util.Map<java.lang.Integer,Stroke> getStrokesMap(Scorecard scorecard)
Specified by:
getStrokesMap in interface ScorecardBusiness
See Also:
getStrokesMap(is.idega.idegaweb.golf.entity.Scorecard)

getDifference

public int getDifference(Scorecard scorecard)
Specified by:
getDifference in interface ScorecardBusiness
See Also:
getDifference(is.idega.idegaweb.golf.entity.Scorecard)

getStrokeCount

public int getStrokeCount(Scorecard scorecard)
Specified by:
getStrokeCount in interface ScorecardBusiness
See Also:
getStrokeCount(is.idega.idegaweb.golf.entity.Scorecard)

getStrokesMap

public java.util.Map getStrokesMap(Scorecard scorecard,
                                   java.util.Collection tees)
Specified by:
getStrokesMap in interface ScorecardBusiness
See Also:
getStrokesMap(is.idega.idegaweb.golf.entity.Scorecard)

getStatisticsMap

public java.util.Map getStatisticsMap(Scorecard scorecard,
                                      java.util.Collection tees)
Specified by:
getStatisticsMap in interface ScorecardBusiness
See Also:
getStatisticsMap(is.idega.idegaweb.golf.entity.Scorecard, java.util.Collection)

getNumberOfHolesPlayed

public int getNumberOfHolesPlayed(Scorecard scorecard)
Specified by:
getNumberOfHolesPlayed in interface ScorecardBusiness
See Also:
getNumberOfHolesPlayed(is.idega.idegaweb.golf.entity.Scorecard)

getStartingHole

public int getStartingHole(Scorecard scorecard)
Specified by:
getStartingHole in interface ScorecardBusiness
See Also:
getStartingHole(is.idega.idegaweb.golf.entity.Scorecard)

getFieldPar

public int getFieldPar(Scorecard scorecard)
Specified by:
getFieldPar in interface ScorecardBusiness
See Also:
getFieldPar(is.idega.idegaweb.golf.entity.Scorecard)

getStatistics

public java.util.Collection getStatistics(Scorecard scorecard)
Specified by:
getStatistics in interface ScorecardBusiness
See Also:
getStatistics(is.idega.idegaweb.golf.entity.Scorecard)

storeScorecard

public Scorecard storeScorecard(Member member,
                                float handicap,
                                Scorecard scorecard,
                                Field field,
                                TeeColor teeColor,
                                int tournamentRoundID,
                                java.sql.Timestamp timestamp,
                                java.util.Collection tees,
                                int[] strokes,
                                int[] points,
                                boolean mobileEntry,
                                Member cardWriter)
                         throws javax.ejb.CreateException
Specified by:
storeScorecard in interface ScorecardBusiness
Throws:
javax.ejb.CreateException
See Also:
storeScorecard(is.idega.idegaweb.golf.entity.Member, float, is.idega.idegaweb.golf.entity.Scorecard, is.idega.idegaweb.golf.entity.Field, is.idega.idegaweb.golf.entity.TeeColor, int, java.sql.Timestamp, java.util.Collection, int[], int[], boolean, is.idega.idegaweb.golf.entity.Member)

storeStatistics

public void storeStatistics(Scorecard scorecard,
                            java.util.Collection tees,
                            boolean[] hitFairway,
                            boolean[] greenInRegulation,
                            int[] putts,
                            int[] drives)
                     throws javax.ejb.CreateException
Specified by:
storeStatistics in interface ScorecardBusiness
Throws:
javax.ejb.CreateException
See Also:
storeStatistics(is.idega.idegaweb.golf.entity.Scorecard, java.util.Collection, boolean[], boolean[], int[], int[])

getStatistics

public java.util.Collection<HoleStatistic> getStatistics(Tournament tournament,
                                                         TournamentRound round,
                                                         float handicapFrom,
                                                         float handicapTo)
Specified by:
getStatistics in interface ScorecardBusiness
See Also:
getStatistics(is.idega.idegaweb.golf.entity.Scorecard)

getTee

public Tee getTee(Field field,
                  TeeColor teeColor,
                  int holeNumber)
Specified by:
getTee in interface ScorecardBusiness
See Also:
getTee(is.idega.idegaweb.golf.entity.Field, is.idega.idegaweb.golf.entity.TeeColor, int)

getStroke

public Stroke getStroke(Scorecard scorecard,
                        Tee tee)
Specified by:
getStroke in interface ScorecardBusiness
See Also:
getStroke(is.idega.idegaweb.golf.entity.Scorecard, is.idega.idegaweb.golf.entity.Tee)

storeStrokes

public void storeStrokes(Scorecard scorecard,
                         java.lang.String[] holes,
                         java.lang.String[] strokes)
                  throws javax.ejb.CreateException
Specified by:
storeStrokes in interface ScorecardBusiness
Throws:
javax.ejb.CreateException
See Also:
storeStrokes(is.idega.idegaweb.golf.entity.Scorecard, java.lang.String[], java.lang.String[])

handleTimeouts

public void handleTimeouts()
Specified by:
handleTimeouts in interface ScorecardBusiness
See Also:
handleTimeouts()

getHandicapAverage

public float getHandicapAverage(java.util.Collection<Scorecard> scoreCards)
Specified by:
getHandicapAverage in interface ScorecardBusiness
Parameters:
scoreCards - to sum, not null;
Returns:
average of Scorecard.getHandicapAfter() or -1 on failure;

getSortedScoreCards

public java.util.TreeMap<java.lang.Float,java.util.List<Scorecard>> getSortedScoreCards(java.util.Collection<Scorecard> scoreCards)
Description copied from interface: ScorecardBusiness

Groups Scorecards by Scorecard.getHandicapAfter().

Specified by:
getSortedScoreCards in interface ScorecardBusiness
Parameters:
scoreCards - to sort, not null;
Returns:
Map of Scorecard.getHandicapAfter() and List of Scorecards with that average or Collections.emptyList() on failure;

getScoreCardsClosestToHandicapAverage

public java.util.List<Scorecard> getScoreCardsClosestToHandicapAverage(java.util.Collection<Scorecard> scoreCards)
Specified by:
getScoreCardsClosestToHandicapAverage in interface ScorecardBusiness
Parameters:
scoreCards - to search in, not null;
Returns:
List of Scorecards having most similar Scorecard.getHandicapAfter() value to average of those values or Collections.emptyList() on failure;

getScoreCardsClosestToHandicapAverage

public java.util.List<Scorecard> getScoreCardsClosestToHandicapAverage(java.lang.String memberPrimaryKey)
Specified by:
getScoreCardsClosestToHandicapAverage in interface ScorecardBusiness
Parameters:
memberPrimaryKey - is EJBLocalObject.getPrimaryKey() to search Scorecards at first place, not null;
Returns:
Scorecards, which has closest value of Scorecard.getHandicapAfter() to average of Scorecard.getHandicapAfter() or Collections.emptyList() on failure;

getMember

public Member getMember(java.lang.Object pk)
Specified by:
getMember in interface ScorecardBusiness
See Also:
getMember(java.lang.Object)

getScorecardHome

protected ScorecardHome getScorecardHome()


Copyright © 2000-2014 idega software. All Rights Reserved.