is.idega.idegaweb.golf.startingtime.business
Class TeeTimeBusinessBean

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

public class TeeTimeBusinessBean
extends com.idega.business.IBOServiceBean
implements TeeTimeBusiness

Title: Golf

Description:

Copyright: Copyright (c) idega 2000

Company: idega Software

Version:
1.0
Author:
2000 - idega team -
Gudmundur Agust Saemundsson
See Also:
Serialized Form

Constructor Summary
TeeTimeBusinessBean()
           
 
Method Summary
 boolean canRegister(int memberID, GolfField field, java.lang.String date, int groupNumber, int numberInGroup)
           
 boolean canReregisterStartingtime(int member_id, java.lang.String field_id, com.idega.util.IWTimestamp date, com.idega.util.IWTimestamp stamp)
           
 void cleanRegistrations()
           
 int countEntriesInGroup(int start_group_num, int end_group_num, java.lang.String field_id, com.idega.util.IWTimestamp date)
           
 int countEntriesInGroup(int group_num, java.lang.String field_id, com.idega.util.IWTimestamp date)
           
 int countMembersEntries(int member_id, java.lang.String field_id, com.idega.util.IWTimestamp date)
           
 int countOwnersEntries(int owner_id, java.lang.String field_id, com.idega.util.IWTimestamp date)
           
 void createHandicapRoundScorecard(TeeTime teeTime, int numberOfHoles, com.idega.util.IWTimestamp hourAndMinute)
           
 void deleteFieldConfig(java.lang.Object primaryKey)
           
 boolean emptyCache()
           
 int entriesInGroup(int group_num, java.lang.String field_id, java.lang.String date)
           
 TeeTime[] findAllPlayersByMemberOrdered(java.lang.String field_id, java.lang.String member_id, java.lang.String orderby_clause)
           
 TeeTime[] findAllPlayersInFieldOrdered(java.lang.String field_id, java.lang.String orderby_clause)
           
 TeeTime[] getByGolfer(int memberID, int fieldID, java.lang.String date)
           
protected  java.util.Map<java.io.Serializable,java.lang.Object> getCache(java.lang.String cacheName)
           
protected  java.util.Calendar getCalendarForNextMidnight()
           
protected  java.util.Calendar getCalendarForPreviousMidnight()
           
protected  java.util.Locale getCurrentLocale()
           
 Field getField(java.lang.Object pk)
           
 Field getFieldById(int id)
           
 StartingtimeFieldConfig getFieldConfig(java.lang.Object pk)
           
 java.util.List<StartingtimeFieldConfig> getFieldConfigs(int fieldID, java.lang.String date)
           
 java.util.Collection<StartingtimeFieldConfig> getFieldConfigs(TeeTime teeTime)
           
 java.util.List<StartingtimeFieldConfig> getFieldConfigsForDate(int fieldID, java.lang.String date)
           
 java.lang.String getFieldName(int field_id)
           
 Field[] getFields(java.lang.String union_id)
           
 int getFieldUnion(int field_id)
           
 int getFirstField(java.lang.String union_id)
           
 StartingtimeFieldConfig getFirstForDay(java.util.Collection<StartingtimeFieldConfig> configs)
           
 com.idega.util.IWTimestamp getFirstOpentime(com.idega.util.IWTimestamp date)
           
protected  java.lang.String getFormattedMessage(WarningMessageEntity warningMessageEntity, TeeTime teeTime)
          Appends Member.getName(), TeeTime.getField() and exact time to WarningMessage;
 com.idega.util.IWTimestamp getLastClosetime(com.idega.util.IWTimestamp date)
           
 StartingtimeFieldConfig getLastForDay(java.util.List<StartingtimeFieldConfig> configs)
           
protected  java.lang.String getLocalizedString(java.lang.String key, java.lang.String value)
           
 int getMaxDaysShown(com.idega.util.IWTimestamp date)
           
 java.util.Collection<Member> getMembers(java.util.Collection<TeeTime> teeTimes)
           
 java.util.Collection<Member> getMembersWhoMissedTeeTimeToday()
           
protected  java.sql.Date getNextMidnight()
           
 java.util.List<TeeTime> getNoShowEntries(java.lang.Object fieldPK, com.idega.util.IWTimestamp from, com.idega.util.IWTimestamp to)
           
 TeeTime[] getPlayersStartingToDay(java.lang.String columnName, java.lang.String toFind)
           
 TeeTime[] getPlayersStartingToDay(java.lang.String column1, java.lang.String toFind1, java.lang.String column2, java.lang.String toFind2)
           
protected  java.sql.Date getPreviousMidnight()
           
 int getRegistrationTimeout()
           
 com.idega.util.IWTimestamp getStamp(int end, StartingtimeFieldConfig config)
           
 Field[] getStartingEntryField()
           
 Field getStartingEntryField(Union union)
           
 Union[] getStartingEntryUnion()
           
 TeeTime getStartingtime(int member_id, com.idega.util.IWTimestamp date)
           
 java.sql.Date getStartingTime(StartingtimeFieldConfig config, java.lang.Integer groupNumber)
           
 java.sql.Date getStartingTime(TeeTime teeTime)
           
 java.util.List getStartingtimeTableEntries(com.idega.util.IWTimestamp date, java.lang.String field_id)
           
 java.util.List getStartingtimeTableEntries(com.idega.util.IWTimestamp date, java.lang.String field_id, int firstGroup, int lastGroup)
           
 TeeTime[] getTableEntries(java.lang.String date, int groupNumber, int fieldID)
           
 TeeTime[] getTableEntries(java.lang.String date, int first_group, int last_group, int field_id)
           
 TeeTime getTeeTimeByScorecard(Scorecard scorecard)
           
 java.util.Collection<TeeTime> getTeeTimesByFieldAndDate(Field field, java.sql.Date date, int groupNumber)
           
 java.util.Collection<TeeTime> getTeeTimesMissedByMember(Member member)
           
 java.util.Collection<TeeTime> getTeeTimesMissedByMembers(java.util.Collection<Member> members)
           
 java.util.Map<Member,java.util.Collection<TeeTime>> getTeeTimesMissedByMembersMap(java.util.Collection<Member> members)
           
 java.util.Map<Union,java.util.Map<Member,java.util.Collection<TeeTime>>> getTeeTimesMissedForMembersWhoMissedTeeTimeToday()
           
 java.util.Collection<TeeTime> getTeeTimesMissedToday()
           
 int getTeeTimesNumberMissedByMember(Member member)
           
 java.util.Map<java.sql.Date,java.util.Collection<TeeTime>> getTeeTimesSortedByDate(java.util.Collection<TeeTime> teeTimes)
           
 java.util.Map<java.sql.Date,java.util.Collection<TeeTime>> getTeeTimesSortedByDateForToday(java.util.Collection<TeeTime> teeTimes)
           
 java.util.Map<Member,java.util.Collection<TeeTime>> getTeeTimesSortedByMembers(java.util.Collection<TeeTime> teeTimes)
           
 java.util.Map<Union,java.util.Collection<TeeTime>> getTeeTimesSortedByUnions(java.util.Collection<TeeTime> teeTimes)
           
 java.util.Map<Union,java.util.Map<Member,java.util.Collection<TeeTime>>> getTeeTimesSortedByUnionsAndMembers(java.util.Collection<TeeTime> teeTimes)
           
protected  WarningMessageEntityDao getWarningMessageEntityDao()
           
 boolean hasOtherRegistrations(int member_id, java.lang.String field_id, com.idega.util.IWTimestamp date, com.idega.util.IWTimestamp stamp)
           
 boolean isReserved(java.lang.String date, int fieldID, int groupNumber)
           
 void markTeeTimesAsMissed(java.sql.Date until)
          Marks option TeeTime.hasArrived() as false, where it was not set to true before.
 void notifyMembersWhoMissedTeeTimesToday()
          Sends WarningMessage to Member who did not showed up at Union on desired TeeTime in last twenty-four hours.
protected  void notifyMemberWhoMissedTeeTimesToday(Union union, Member member, java.util.Collection<TeeTime> allTeeTimesMissedByMember)
          This method creates and number of e-mails with WarningMessage about TeeTimes where user did not TeeTime.getShowedUp().
 void removeHandicapRoundScorecard(TeeTime teeTime)
           
 java.lang.String removeReservation(java.lang.String date, int fieldID, int groupNumber)
           
 void setStartingtime(int group_num, com.idega.util.IWTimestamp date, java.lang.String field_id, java.lang.String member_id, java.lang.String player_name, java.lang.String handicap, java.lang.String union, java.lang.String card, java.lang.String card_no, java.lang.String gender)
           
 void setStartingtime(int group_num, com.idega.util.IWTimestamp date, java.lang.String field_id, java.lang.String member_id, java.lang.String owner_id, java.lang.String player_name, java.lang.String handicap, java.lang.String union, java.lang.String card, java.lang.String card_no, java.lang.String gender, java.lang.String otherType, java.lang.String extraInfo, boolean handicapRound, int numberOfHoles, com.idega.util.IWTimestamp stamp, java.lang.String teeColorId)
           
 void setStartingtime(int group_num, java.lang.String date, java.lang.String field_id, java.lang.String member_id, java.lang.String player_name, java.lang.String handicap, java.lang.String union, java.lang.String card, java.lang.String card_no, java.lang.String gender)
           
 void storeFieldConfig(java.lang.Object pk, int fieldID, java.sql.Timestamp beginDate, java.sql.Timestamp openTime, java.sql.Timestamp closeTime, java.sql.Timestamp registerStart, int interval, int memberDays, boolean allowMemberRegistration, int publicDays, boolean allowPublicRegistration, float maxHandicap, boolean hideGolferInfo, boolean showGolferInfoForMembers, boolean allowMultipleEntries, boolean canUnregiser, int unregisterTime, java.lang.String comment, java.lang.String childComment)
           
 boolean updateFailedAttempts(int memberID, java.lang.String date, int fieldID, int groupNumber)
           
 
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

TeeTimeBusinessBean

public TeeTimeBusinessBean()
Method Detail

getFirstField

public int getFirstField(java.lang.String union_id)
                  throws java.sql.SQLException
Specified by:
getFirstField in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
getFirstField(java.lang.String)

getTableEntries

public TeeTime[] getTableEntries(java.lang.String date,
                                 int first_group,
                                 int last_group,
                                 int field_id)
                          throws java.sql.SQLException
Specified by:
getTableEntries in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
getTableEntries(java.lang.String, int, int, int)

getTableEntries

public TeeTime[] getTableEntries(java.lang.String date,
                                 int groupNumber,
                                 int fieldID)
                          throws java.sql.SQLException
Specified by:
getTableEntries in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
getTableEntries(java.lang.String, int, int, int)

getStartingtimeTableEntries

public java.util.List getStartingtimeTableEntries(com.idega.util.IWTimestamp date,
                                                  java.lang.String field_id,
                                                  int firstGroup,
                                                  int lastGroup)
                                           throws java.sql.SQLException
Specified by:
getStartingtimeTableEntries in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
getStartingtimeTableEntries(com.idega.util.IWTimestamp, java.lang.String, int, int)

getStartingtimeTableEntries

public java.util.List getStartingtimeTableEntries(com.idega.util.IWTimestamp date,
                                                  java.lang.String field_id)
                                           throws java.sql.SQLException
Specified by:
getStartingtimeTableEntries in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
getStartingtimeTableEntries(com.idega.util.IWTimestamp, java.lang.String, int, int)

getNoShowEntries

public java.util.List<TeeTime> getNoShowEntries(java.lang.Object fieldPK,
                                                com.idega.util.IWTimestamp from,
                                                com.idega.util.IWTimestamp to)
                                         throws java.sql.SQLException
Specified by:
getNoShowEntries in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
getNoShowEntries(java.lang.Object, com.idega.util.IWTimestamp, com.idega.util.IWTimestamp)

getFields

public Field[] getFields(java.lang.String union_id)
                  throws java.sql.SQLException
Specified by:
getFields in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
getFields(java.lang.String)

getFieldById

public Field getFieldById(int id)
                   throws java.sql.SQLException
Specified by:
getFieldById in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
getFieldById(int)

getCache

protected java.util.Map<java.io.Serializable,java.lang.Object> getCache(java.lang.String cacheName)

emptyCache

public boolean emptyCache()
Specified by:
emptyCache in interface TeeTimeBusiness
See Also:
emptyCache()

getFieldConfig

public StartingtimeFieldConfig getFieldConfig(java.lang.Object pk)
Specified by:
getFieldConfig in interface TeeTimeBusiness
See Also:
getFieldConfig(java.lang.Object)

getFieldConfigs

public java.util.List<StartingtimeFieldConfig> getFieldConfigs(int fieldID,
                                                               java.lang.String date)
Specified by:
getFieldConfigs in interface TeeTimeBusiness
Parameters:
fieldID - is EJBLocalObject.getPrimaryKey();
date - last date of new StartingtimeFieldConfig entered, skipped if null;
Returns:
entities by criteria;

getFieldConfigs

public java.util.Collection<StartingtimeFieldConfig> getFieldConfigs(TeeTime teeTime)
Specified by:
getFieldConfigs in interface TeeTimeBusiness
Parameters:
teeTime - to search by, not null;
Returns:
List of StartingtimeFieldConfigs for TeeTime.getStartingtimeDate() and TeeTime.getField() or Collections.emptyList() on failure;

getFieldConfigsForDate

public java.util.List<StartingtimeFieldConfig> getFieldConfigsForDate(int fieldID,
                                                                      java.lang.String date)
Specified by:
getFieldConfigsForDate in interface TeeTimeBusiness
See Also:
getFieldConfigsForDate(int, java.lang.String)

getStamp

public com.idega.util.IWTimestamp getStamp(int end,
                                           StartingtimeFieldConfig config)
Specified by:
getStamp in interface TeeTimeBusiness
See Also:
getStamp(int, is.idega.idegaweb.golf.entity.StartingtimeFieldConfig)

getFirstForDay

public StartingtimeFieldConfig getFirstForDay(java.util.Collection<StartingtimeFieldConfig> configs)
Specified by:
getFirstForDay in interface TeeTimeBusiness

getLastForDay

public StartingtimeFieldConfig getLastForDay(java.util.List<StartingtimeFieldConfig> configs)
Specified by:
getLastForDay in interface TeeTimeBusiness
See Also:
getLastForDay(java.util.List)

storeFieldConfig

public void storeFieldConfig(java.lang.Object pk,
                             int fieldID,
                             java.sql.Timestamp beginDate,
                             java.sql.Timestamp openTime,
                             java.sql.Timestamp closeTime,
                             java.sql.Timestamp registerStart,
                             int interval,
                             int memberDays,
                             boolean allowMemberRegistration,
                             int publicDays,
                             boolean allowPublicRegistration,
                             float maxHandicap,
                             boolean hideGolferInfo,
                             boolean showGolferInfoForMembers,
                             boolean allowMultipleEntries,
                             boolean canUnregiser,
                             int unregisterTime,
                             java.lang.String comment,
                             java.lang.String childComment)
                      throws javax.ejb.CreateException
Specified by:
storeFieldConfig in interface TeeTimeBusiness
Throws:
javax.ejb.CreateException
See Also:
storeFieldConfig(java.lang.Object, int, java.sql.Timestamp, java.sql.Timestamp, java.sql.Timestamp, java.sql.Timestamp, int, int, boolean, int, boolean, float, boolean, boolean, boolean, boolean, int, java.lang.String, java.lang.String)

deleteFieldConfig

public void deleteFieldConfig(java.lang.Object primaryKey)
Specified by:
deleteFieldConfig in interface TeeTimeBusiness
See Also:
deleteFieldConfig(java.lang.Object)

setStartingtime

public void setStartingtime(int group_num,
                            com.idega.util.IWTimestamp date,
                            java.lang.String field_id,
                            java.lang.String member_id,
                            java.lang.String owner_id,
                            java.lang.String player_name,
                            java.lang.String handicap,
                            java.lang.String union,
                            java.lang.String card,
                            java.lang.String card_no,
                            java.lang.String gender,
                            java.lang.String otherType,
                            java.lang.String extraInfo,
                            boolean handicapRound,
                            int numberOfHoles,
                            com.idega.util.IWTimestamp stamp,
                            java.lang.String teeColorId)
                     throws java.sql.SQLException
Specified by:
setStartingtime in interface TeeTimeBusiness
teeColorId - TODO
Throws:
java.sql.SQLException
See Also:
setStartingtime(int, com.idega.util.IWTimestamp, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, boolean, int, com.idega.util.IWTimestamp, java.lang.String)

createHandicapRoundScorecard

public void createHandicapRoundScorecard(TeeTime teeTime,
                                         int numberOfHoles,
                                         com.idega.util.IWTimestamp hourAndMinute)
Specified by:
createHandicapRoundScorecard in interface TeeTimeBusiness
See Also:
createHandicapRoundScorecard(is.idega.idegaweb.golf.startingtime.data.TeeTime, int, com.idega.util.IWTimestamp)

removeHandicapRoundScorecard

public void removeHandicapRoundScorecard(TeeTime teeTime)
Specified by:
removeHandicapRoundScorecard in interface TeeTimeBusiness
See Also:
removeHandicapRoundScorecard(is.idega.idegaweb.golf.startingtime.data.TeeTime)

setStartingtime

public void setStartingtime(int group_num,
                            com.idega.util.IWTimestamp date,
                            java.lang.String field_id,
                            java.lang.String member_id,
                            java.lang.String player_name,
                            java.lang.String handicap,
                            java.lang.String union,
                            java.lang.String card,
                            java.lang.String card_no,
                            java.lang.String gender)
                     throws java.sql.SQLException
Specified by:
setStartingtime in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
setStartingtime(int, com.idega.util.IWTimestamp, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, boolean, int, com.idega.util.IWTimestamp, java.lang.String)

setStartingtime

public void setStartingtime(int group_num,
                            java.lang.String date,
                            java.lang.String field_id,
                            java.lang.String member_id,
                            java.lang.String player_name,
                            java.lang.String handicap,
                            java.lang.String union,
                            java.lang.String card,
                            java.lang.String card_no,
                            java.lang.String gender)
                     throws java.sql.SQLException
Specified by:
setStartingtime in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
setStartingtime(int, com.idega.util.IWTimestamp, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String, boolean, int, com.idega.util.IWTimestamp, java.lang.String)

countEntriesInGroup

public int countEntriesInGroup(int start_group_num,
                               int end_group_num,
                               java.lang.String field_id,
                               com.idega.util.IWTimestamp date)
                        throws java.sql.SQLException
Specified by:
countEntriesInGroup in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
countEntriesInGroup(int, int, java.lang.String, com.idega.util.IWTimestamp)

countEntriesInGroup

public int countEntriesInGroup(int group_num,
                               java.lang.String field_id,
                               com.idega.util.IWTimestamp date)
                        throws java.sql.SQLException
Specified by:
countEntriesInGroup in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
countEntriesInGroup(int, int, java.lang.String, com.idega.util.IWTimestamp)

entriesInGroup

public int entriesInGroup(int group_num,
                          java.lang.String field_id,
                          java.lang.String date)
                   throws java.sql.SQLException
Specified by:
entriesInGroup in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
entriesInGroup(int, java.lang.String, java.lang.String)

countOwnersEntries

public int countOwnersEntries(int owner_id,
                              java.lang.String field_id,
                              com.idega.util.IWTimestamp date)
                       throws java.sql.SQLException
Specified by:
countOwnersEntries in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
countOwnersEntries(int, java.lang.String, com.idega.util.IWTimestamp)

countMembersEntries

public int countMembersEntries(int member_id,
                               java.lang.String field_id,
                               com.idega.util.IWTimestamp date)
                        throws java.sql.SQLException
Specified by:
countMembersEntries in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
countMembersEntries(int, java.lang.String, com.idega.util.IWTimestamp)

canReregisterStartingtime

public boolean canReregisterStartingtime(int member_id,
                                         java.lang.String field_id,
                                         com.idega.util.IWTimestamp date,
                                         com.idega.util.IWTimestamp stamp)
                                  throws java.sql.SQLException
Specified by:
canReregisterStartingtime in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
canReregisterStartingtime(int, java.lang.String, com.idega.util.IWTimestamp, com.idega.util.IWTimestamp)

hasOtherRegistrations

public boolean hasOtherRegistrations(int member_id,
                                     java.lang.String field_id,
                                     com.idega.util.IWTimestamp date,
                                     com.idega.util.IWTimestamp stamp)
                              throws java.sql.SQLException
Specified by:
hasOtherRegistrations in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
hasOtherRegistrations(int, java.lang.String, com.idega.util.IWTimestamp, com.idega.util.IWTimestamp)

getStartingtime

public TeeTime getStartingtime(int member_id,
                               com.idega.util.IWTimestamp date)
                        throws java.sql.SQLException
Specified by:
getStartingtime in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
getStartingtime(int, com.idega.util.IWTimestamp)

getRegistrationTimeout

public int getRegistrationTimeout()
Specified by:
getRegistrationTimeout in interface TeeTimeBusiness
See Also:
getRegistrationTimeout()

canRegister

public boolean canRegister(int memberID,
                           GolfField field,
                           java.lang.String date,
                           int groupNumber,
                           int numberInGroup)
Specified by:
canRegister in interface TeeTimeBusiness
See Also:
canRegister(int, is.idega.idegaweb.golf.GolfField, java.lang.String, int, int)

removeReservation

public java.lang.String removeReservation(java.lang.String date,
                                          int fieldID,
                                          int groupNumber)
Specified by:
removeReservation in interface TeeTimeBusiness
See Also:
removeReservation(java.lang.String, int, int)

cleanRegistrations

public void cleanRegistrations()
Specified by:
cleanRegistrations in interface TeeTimeBusiness
See Also:
cleanRegistrations()

isReserved

public boolean isReserved(java.lang.String date,
                          int fieldID,
                          int groupNumber)
Specified by:
isReserved in interface TeeTimeBusiness
See Also:
isReserved(java.lang.String, int, int)

updateFailedAttempts

public boolean updateFailedAttempts(int memberID,
                                    java.lang.String date,
                                    int fieldID,
                                    int groupNumber)
Specified by:
updateFailedAttempts in interface TeeTimeBusiness
See Also:
updateFailedAttempts(int, java.lang.String, int, int)

getStartingEntryUnion

public Union[] getStartingEntryUnion()
                              throws java.sql.SQLException
Specified by:
getStartingEntryUnion in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
getStartingEntryUnion()

getStartingEntryField

public Field getStartingEntryField(Union union)
                            throws java.sql.SQLException
Specified by:
getStartingEntryField in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
getStartingEntryField(is.idega.idegaweb.golf.entity.Union)

getStartingEntryField

public Field[] getStartingEntryField()
                              throws java.sql.SQLException
Specified by:
getStartingEntryField in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
getStartingEntryField(is.idega.idegaweb.golf.entity.Union)

getFieldName

public java.lang.String getFieldName(int field_id)
                              throws java.sql.SQLException,
                                     javax.ejb.FinderException
Specified by:
getFieldName in interface TeeTimeBusiness
Throws:
java.sql.SQLException
javax.ejb.FinderException
See Also:
getFieldName(int)

getFirstOpentime

public com.idega.util.IWTimestamp getFirstOpentime(com.idega.util.IWTimestamp date)
                                            throws java.sql.SQLException,
                                                   javax.ejb.FinderException
Specified by:
getFirstOpentime in interface TeeTimeBusiness
Throws:
java.sql.SQLException
javax.ejb.FinderException
See Also:
getFirstOpentime(com.idega.util.IWTimestamp)

getMaxDaysShown

public int getMaxDaysShown(com.idega.util.IWTimestamp date)
                    throws java.sql.SQLException,
                           javax.ejb.FinderException
Specified by:
getMaxDaysShown in interface TeeTimeBusiness
Throws:
java.sql.SQLException
javax.ejb.FinderException
See Also:
getMaxDaysShown(com.idega.util.IWTimestamp)

getLastClosetime

public com.idega.util.IWTimestamp getLastClosetime(com.idega.util.IWTimestamp date)
                                            throws java.sql.SQLException,
                                                   javax.ejb.FinderException
Specified by:
getLastClosetime in interface TeeTimeBusiness
Throws:
java.sql.SQLException
javax.ejb.FinderException
See Also:
getLastClosetime(com.idega.util.IWTimestamp)

getFieldUnion

public int getFieldUnion(int field_id)
                  throws java.sql.SQLException,
                         javax.ejb.FinderException
Specified by:
getFieldUnion in interface TeeTimeBusiness
Throws:
java.sql.SQLException
javax.ejb.FinderException
See Also:
getFieldUnion(int)

getField

public Field getField(java.lang.Object pk)
Specified by:
getField in interface TeeTimeBusiness
See Also:
getField(java.lang.Object)

findAllPlayersInFieldOrdered

public TeeTime[] findAllPlayersInFieldOrdered(java.lang.String field_id,
                                              java.lang.String orderby_clause)
                                       throws java.io.IOException,
                                              java.sql.SQLException
Specified by:
findAllPlayersInFieldOrdered in interface TeeTimeBusiness
Throws:
java.io.IOException
java.sql.SQLException
See Also:
findAllPlayersInFieldOrdered(java.lang.String, java.lang.String)

findAllPlayersByMemberOrdered

public TeeTime[] findAllPlayersByMemberOrdered(java.lang.String field_id,
                                               java.lang.String member_id,
                                               java.lang.String orderby_clause)
                                        throws java.io.IOException,
                                               java.sql.SQLException
Specified by:
findAllPlayersByMemberOrdered in interface TeeTimeBusiness
Throws:
java.io.IOException
java.sql.SQLException
See Also:
findAllPlayersByMemberOrdered(java.lang.String, java.lang.String, java.lang.String)

getByGolfer

public TeeTime[] getByGolfer(int memberID,
                             int fieldID,
                             java.lang.String date)
                      throws java.sql.SQLException
Specified by:
getByGolfer in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
getByGolfer(int, int, java.lang.String)

getPlayersStartingToDay

public TeeTime[] getPlayersStartingToDay(java.lang.String columnName,
                                         java.lang.String toFind)
                                  throws java.sql.SQLException
Specified by:
getPlayersStartingToDay in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
getPlayersStartingToDay(java.lang.String, java.lang.String)

getPlayersStartingToDay

public TeeTime[] getPlayersStartingToDay(java.lang.String column1,
                                         java.lang.String toFind1,
                                         java.lang.String column2,
                                         java.lang.String toFind2)
                                  throws java.sql.SQLException
Specified by:
getPlayersStartingToDay in interface TeeTimeBusiness
Throws:
java.sql.SQLException
See Also:
getPlayersStartingToDay(java.lang.String, java.lang.String)

getTeeTimeByScorecard

public TeeTime getTeeTimeByScorecard(Scorecard scorecard)
Specified by:
getTeeTimeByScorecard in interface TeeTimeBusiness
See Also:
getTeeTimeByScorecard(is.idega.idegaweb.golf.entity.Scorecard)

getTeeTimesByFieldAndDate

public java.util.Collection<TeeTime> getTeeTimesByFieldAndDate(Field field,
                                                               java.sql.Date date,
                                                               int groupNumber)
Specified by:
getTeeTimesByFieldAndDate in interface TeeTimeBusiness
See Also:
getTeeTimesByFieldAndDate(is.idega.idegaweb.golf.entity.Field, java.sql.Date, int)

getTeeTimesSortedByUnions

public java.util.Map<Union,java.util.Collection<TeeTime>> getTeeTimesSortedByUnions(java.util.Collection<TeeTime> teeTimes)
Specified by:
getTeeTimesSortedByUnions in interface TeeTimeBusiness
Parameters:
teeTimes - to group, not null;
Returns:
grouped TeeTimes by Unions or Collections.emptyMap() on failure;

getTeeTimesSortedByMembers

public java.util.Map<Member,java.util.Collection<TeeTime>> getTeeTimesSortedByMembers(java.util.Collection<TeeTime> teeTimes)
Specified by:
getTeeTimesSortedByMembers in interface TeeTimeBusiness
Parameters:
teeTimes - to sort, not null;
Returns:
TeeTimes sorted by Members or Collections.emptyList() on failure;

getTeeTimesSortedByUnionsAndMembers

public java.util.Map<Union,java.util.Map<Member,java.util.Collection<TeeTime>>> getTeeTimesSortedByUnionsAndMembers(java.util.Collection<TeeTime> teeTimes)
Specified by:
getTeeTimesSortedByUnionsAndMembers in interface TeeTimeBusiness
Parameters:
teeTimes - to sort, not null;
Returns:
tree of TeeTimes sorted by Union and Members or Collections.emptyMap() on failure;

getTeeTimesMissedByMember

public java.util.Collection<TeeTime> getTeeTimesMissedByMember(Member member)
Specified by:
getTeeTimesMissedByMember in interface TeeTimeBusiness
Parameters:
member - to get missed TeeTimes for, not null;
Returns:
missed TeeTimes for Member or Collections.emptyList() on failure;

getTeeTimesMissedByMembers

public java.util.Collection<TeeTime> getTeeTimesMissedByMembers(java.util.Collection<Member> members)
Specified by:
getTeeTimesMissedByMembers in interface TeeTimeBusiness
Returns:
missed TeeTimes for Member or Collections.emptyList() on failure;

getTeeTimesMissedByMembersMap

public java.util.Map<Member,java.util.Collection<TeeTime>> getTeeTimesMissedByMembersMap(java.util.Collection<Member> members)
Specified by:
getTeeTimesMissedByMembersMap in interface TeeTimeBusiness
Returns:
Map of Member and his missed TeeTimes or Collections.emptyMap() on failure;

getTeeTimesNumberMissedByMember

public int getTeeTimesNumberMissedByMember(Member member)
Specified by:
getTeeTimesNumberMissedByMember in interface TeeTimeBusiness
Parameters:
member - to get missed TeeTimes for, not null;
Returns:
number of missed TeeTimes for Member or Collections.emptyList() on failure;

getCalendarForPreviousMidnight

protected java.util.Calendar getCalendarForPreviousMidnight()
Returns:
Calendar set for Date of today with Calendar.HOUR, Calendar.MINUTE and Calendar.SECOND set to zero;

getCalendarForNextMidnight

protected java.util.Calendar getCalendarForNextMidnight()
Returns:
Calendar set for Date of today where Calendar.HOUR is 23, Calendar.MINUTE is 59 and Calendar.SECOND is 59;

getPreviousMidnight

protected java.sql.Date getPreviousMidnight()
Returns:
Date of tomorrow with Calendar.HOUR, Calendar.MINUTE and Calendar.SECOND set to zero;

getNextMidnight

protected java.sql.Date getNextMidnight()
Returns:
Date set for Date of today where Calendar.HOUR is 23, Calendar.MINUTE is 59 and Calendar.SECOND is 59;

getTeeTimesMissedToday

public java.util.Collection<TeeTime> getTeeTimesMissedToday()
Specified by:
getTeeTimesMissedToday in interface TeeTimeBusiness
Returns:
TeeTimes which has false value on TeeTime.getShowedUp() and time between midnights of today and yesterday or Collections.emptyList() on failure;

getMembers

public java.util.Collection<Member> getMembers(java.util.Collection<TeeTime> teeTimes)
Specified by:
getMembers in interface TeeTimeBusiness
Parameters:
teeTimes - to get Members for, not null;
Returns:
Members, who registered at given TeeTimes or Collections.emptyList() on failure;

getMembersWhoMissedTeeTimeToday

public java.util.Collection<Member> getMembersWhoMissedTeeTimeToday()
Specified by:
getMembersWhoMissedTeeTimeToday in interface TeeTimeBusiness
Returns:
Members, who registered at given TeeTimes today and did not arrived or Collections.emptyList() on failure;

getTeeTimesMissedForMembersWhoMissedTeeTimeToday

public java.util.Map<Union,java.util.Map<Member,java.util.Collection<TeeTime>>> getTeeTimesMissedForMembersWhoMissedTeeTimeToday()
Specified by:
getTeeTimesMissedForMembersWhoMissedTeeTimeToday in interface TeeTimeBusiness
Returns:
missed TeeTimes for Members who did not arrived to TeeTime today. TeeTimes are sorted by Unions and Members who missed them. On failure Collections.emptyMap();

getTeeTimesSortedByDate

public java.util.Map<java.sql.Date,java.util.Collection<TeeTime>> getTeeTimesSortedByDate(java.util.Collection<TeeTime> teeTimes)
Specified by:
getTeeTimesSortedByDate in interface TeeTimeBusiness
Parameters:
teeTimes - to sort, not null;
Returns:
TeeTimes sorted by TeeTime.getStartingtimeDate() or Collections.emptyList() on failure;

getTeeTimesSortedByDateForToday

public java.util.Map<java.sql.Date,java.util.Collection<TeeTime>> getTeeTimesSortedByDateForToday(java.util.Collection<TeeTime> teeTimes)
Specified by:
getTeeTimesSortedByDateForToday in interface TeeTimeBusiness
Parameters:
teeTimes - to filter and sort, not null;
Returns:
TeeTimes sorted by TeeTime.getStartingtimeDate() and filtered by date range of getPreviousMidnight() and getNextMidnight() or Collections.emptyList() on failure;

getFormattedMessage

protected java.lang.String getFormattedMessage(WarningMessageEntity warningMessageEntity,
                                               TeeTime teeTime)

Appends Member.getName(), TeeTime.getField() and exact time to WarningMessage;

Parameters:
warningMessageEntity - to append, not null;
teeTime - to get data to append from, not null;
Returns:
WarningMessage with appended data from TeeTime or null on failure;

getStartingTime

public java.sql.Date getStartingTime(TeeTime teeTime)
Specified by:
getStartingTime in interface TeeTimeBusiness
Parameters:
teeTime - to get registered time for, not null;
Returns:
exact time of registered TeeTime, null on failure;

getStartingTime

public java.sql.Date getStartingTime(StartingtimeFieldConfig config,
                                     java.lang.Integer groupNumber)
Specified by:
getStartingTime in interface TeeTimeBusiness
Parameters:
config - is StartingtimeFieldConfig which contains StartingtimeFieldConfig.getOpenTime() of a Field, not null;
groupNumber - is TeeTime.getGroupNum(), which is number of players group, where the user is registered, not null;
Returns:
exact time of registered TeeTime, null on failure;

notifyMemberWhoMissedTeeTimesToday

protected void notifyMemberWhoMissedTeeTimesToday(Union union,
                                                  Member member,
                                                  java.util.Collection<TeeTime> allTeeTimesMissedByMember)

This method creates and number of e-mails with WarningMessage about TeeTimes where user did not TeeTime.getShowedUp(). Be aware to give correct pairs of values, because due to lack of performance, no check will be performed. I totally believe in you!

Parameters:
union - is golf club to get WarningMessageEntitys for, not null;
member - of given Union, who has missed a TeeTime today, not null;
allTeeTimesMissedByMember - is all TeeTimes ever missed by given Member in given Union, not null;

notifyMembersWhoMissedTeeTimesToday

public void notifyMembersWhoMissedTeeTimesToday()
Description copied from interface: TeeTimeBusiness

Sends WarningMessage to Member who did not showed up at Union on desired TeeTime in last twenty-four hours.

Specified by:
notifyMembersWhoMissedTeeTimesToday in interface TeeTimeBusiness

markTeeTimesAsMissed

public void markTeeTimesAsMissed(java.sql.Date until)
Description copied from interface: TeeTimeBusiness

Marks option TeeTime.hasArrived() as false, where it was not set to true before. Marks only TeeTimes created from last midnight.

Specified by:
markTeeTimesAsMissed in interface TeeTimeBusiness
Parameters:
until - is time until all TeeTimes that should be marked;

getLocalizedString

protected java.lang.String getLocalizedString(java.lang.String key,
                                              java.lang.String value)

getCurrentLocale

protected java.util.Locale getCurrentLocale()

getWarningMessageEntityDao

protected WarningMessageEntityDao getWarningMessageEntityDao()


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