ContactCenters
V. 0.9.9.

umontreal.iro.lecuyer.contactcenters.app
Class AbstractContactCenterInfo

java.lang.Object
  extended by umontreal.iro.lecuyer.contactcenters.app.AbstractContactCenterInfo
All Implemented Interfaces:
ContactCenterInfo
Direct Known Subclasses:
AbstractContactCenterEval, CallCenter

public abstract class AbstractContactCenterInfo
extends Object
implements ContactCenterInfo

Provides default implementations for some methods in ContactCenterInfo. Implemented methods giving strings return null, methods giving integers return 0, and methods giving properties return empty maps. Method getNumContactTypesWithSegments() and other similar methods return the number of contact types plus the number of segments regrouping contact types.


Constructor Summary
AbstractContactCenterInfo()
           
 
Method Summary
 String getAgentGroupName(int i)
          Returns the name associated with the agent group identifier i.
 Map<String,String> getAgentGroupProperties(int i)
          This method is similar to ContactCenterInfo.getContactTypeProperties(int), for agent groups instead of contact types.
 String getAgentGroupSegmentName(int i)
          Returns the name associated with the agent group segment i, where i is a number greater than or equal to 0 and smaller than ContactCenterInfo.getNumAgentGroupSegments().
 Map<String,String> getAgentGroupSegmentProperties(int i)
          This method is similar to ContactCenterInfo.getContactTypeProperties(int), for agent group segments instead of contact types.
 String getContactTypeName(int k)
          Returns the name associated with the contact type k, where k is a number greater than or equal to 0 and smaller than ContactCenterInfo.getNumContactTypes().
 Map<String,String> getContactTypeProperties(int k)
          Returns the properties associated with contact type k.
 String getContactTypeSegmentName(int k)
          Returns the name associated with the contact type segment k, where k is a number greater than or equal to 0 and smaller than ContactCenterInfo.getNumContactTypeSegments().
 Map<String,String> getContactTypeSegmentProperties(int k)
          This method is similar to ContactCenterInfo.getContactTypeProperties(int), for contact type segments instead of contact types.
 String getInContactTypeSegmentName(int k)
          Returns the name associated with the inbound contact type segment k, where k is a number greater than or equal to 0 and smaller than ContactCenterInfo.getNumInContactTypeSegments().
 Map<String,String> getInContactTypeSegmentProperties(int k)
          This method is similar to ContactCenterInfo.getContactTypeProperties(int), for inbound contact type segments instead of contact types.
 String getMainPeriodName(int mp)
          Returns the name corresponding to the main period mp.
 String getMainPeriodSegmentName(int mp)
          Returns the name associated with the main period segment mp, where mp is a number greater than or equal to 0 and smaller than ContactCenterInfo.getNumMainPeriodSegments().
 String getMatrixOfAWTName(int m)
          Returns the name associated with the matrix of AWTs with index m.
 int getNumAgentGroupSegments()
          Returns the number of user-defined segments regrouping agent groups.
 int getNumAgentGroupsWithSegments()
          Returns the number of agent groups including segments regrouping several agent groups.
 int getNumContactTypeSegments()
          Returns the number of user-defined segments regrouping contact types.
 int getNumContactTypesWithSegments()
          Returns the number of contact types including segments regrouping several contact types.
 int getNumInContactTypeSegments()
          Returns the number of user-defined segments regrouping inbound contact types.
 int getNumInContactTypesWithSegments()
          Returns the number of inbound contact types including segments regrouping several inbound contact types.
 int getNumMainPeriodSegments()
          Returns the number of user-defined segments regrouping main periods.
 int getNumMainPeriodsWithSegments()
          Returns the number of main periods including segments regrouping several main periods.
 int getNumOutContactTypeSegments()
          Returns the number of user-defined segments regrouping outbound contact types.
 int getNumOutContactTypesWithSegments()
          Returns the number of outbound contact types including segments regrouping several outbound contact types.
 int getNumWaitingQueueSegments()
          Returns the number of user-defined segments regrouping waiting queues.
 int getNumWaitingQueuesWithSegments()
          Returns the number of waiting queues including segments regrouping several waiting queues.
 String getOutContactTypeSegmentName(int k)
          Returns the name associated with the outbound contact type segment k, where k is a number greater than or equal to 0 and smaller than ContactCenterInfo.getNumOutContactTypeSegments().
 Map<String,String> getOutContactTypeSegmentProperties(int k)
          This method is similar to ContactCenterInfo.getContactTypeProperties(int), for outbound contact type segments instead of contact types.
 String getWaitingQueueName(int q)
          Returns the name of the waiting queue with index q used by the evaluation.
 Map<String,String> getWaitingQueueProperties(int q)
          This method is similar to ContactCenterInfo.getContactTypeProperties(int), for waiting queues instead of contact types.
 String getWaitingQueueSegmentName(int k)
          Returns the name associated with the waiting queue segment q, where q is a number greater than or equal to 0 and smaller than ContactCenterInfo.getNumMainPeriodSegments().
 Map<String,String> getWaitingQueueSegmentProperties(int q)
          This method is similar to ContactCenterInfo.getContactTypeProperties(int), for waiting queue segments instead of contact types.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface umontreal.iro.lecuyer.contactcenters.app.ContactCenterInfo
getDefaultUnit, getNumAgentGroups, getNumContactTypes, getNumInContactTypes, getNumMainPeriods, getNumMatricesOfAWT, getNumOutContactTypes, getNumWaitingQueues
 

Constructor Detail

AbstractContactCenterInfo

public AbstractContactCenterInfo()
Method Detail

getContactTypeName

public String getContactTypeName(int k)
Description copied from interface: ContactCenterInfo
Returns the name associated with the contact type k, where k is a number greater than or equal to 0 and smaller than ContactCenterInfo.getNumContactTypes(). The first ContactCenterInfo.getNumInContactTypes() indices are inbound contact types whereas the remaining indices are outbound contact types. If no contact type name is available, this returns null.

Specified by:
getContactTypeName in interface ContactCenterInfo
Parameters:
k - the contact type identifier.
Returns:
the contact type name or null if no name is defined.

getAgentGroupName

public String getAgentGroupName(int i)
Description copied from interface: ContactCenterInfo
Returns the name associated with the agent group identifier i. If no name is associated with a given agent group, this returns null.

Specified by:
getAgentGroupName in interface ContactCenterInfo
Parameters:
i - the identifier of the agent group.
Returns:
the agent group name, or null.

getWaitingQueueName

public String getWaitingQueueName(int q)
Description copied from interface: ContactCenterInfo
Returns the name of the waiting queue with index q used by the evaluation. If the waiting queue has no name, returns null.

Specified by:
getWaitingQueueName in interface ContactCenterInfo
Parameters:
q - the index of the waiting queue.
Returns:
the name of the waiting queue.

getMainPeriodName

public String getMainPeriodName(int mp)
Description copied from interface: ContactCenterInfo
Returns the name corresponding to the main period mp. This can return null or an empty string for unnamed periods.

Specified by:
getMainPeriodName in interface ContactCenterInfo
Parameters:
mp - the index of the main period.
Returns:
the name of the main period.

getAgentGroupProperties

public Map<String,String> getAgentGroupProperties(int i)
Description copied from interface: ContactCenterInfo
This method is similar to ContactCenterInfo.getContactTypeProperties(int), for agent groups instead of contact types.

Specified by:
getAgentGroupProperties in interface ContactCenterInfo
Parameters:
i - the agent group identifier.
Returns:
the map of properties.

getAgentGroupSegmentName

public String getAgentGroupSegmentName(int i)
Description copied from interface: ContactCenterInfo
Returns the name associated with the agent group segment i, where i is a number greater than or equal to 0 and smaller than ContactCenterInfo.getNumAgentGroupSegments(). If no segment name is available, this returns null.

Specified by:
getAgentGroupSegmentName in interface ContactCenterInfo
Parameters:
i - the agent group segment identifier.
Returns:
the segment name or null if no name is defined.

getAgentGroupSegmentProperties

public Map<String,String> getAgentGroupSegmentProperties(int i)
Description copied from interface: ContactCenterInfo
This method is similar to ContactCenterInfo.getContactTypeProperties(int), for agent group segments instead of contact types.

Specified by:
getAgentGroupSegmentProperties in interface ContactCenterInfo
Parameters:
i - the segment identifier.
Returns:
the map of properties.

getContactTypeProperties

public Map<String,String> getContactTypeProperties(int k)
Description copied from interface: ContactCenterInfo
Returns the properties associated with contact type k. Properties are additional strings describing a contact type. This can include the language of the customers, the originating region, etc. If no property is defined for the given contact type, this method returns an empty map.

Specified by:
getContactTypeProperties in interface ContactCenterInfo
Parameters:
k - the contact type identifier.
Returns:
the map of properties.

getContactTypeSegmentName

public String getContactTypeSegmentName(int k)
Description copied from interface: ContactCenterInfo
Returns the name associated with the contact type segment k, where k is a number greater than or equal to 0 and smaller than ContactCenterInfo.getNumContactTypeSegments(). If no segment name is available, this returns null.

Specified by:
getContactTypeSegmentName in interface ContactCenterInfo
Parameters:
k - the contact type segment identifier.
Returns:
the segment name or null if no name is defined.

getContactTypeSegmentProperties

public Map<String,String> getContactTypeSegmentProperties(int k)
Description copied from interface: ContactCenterInfo
This method is similar to ContactCenterInfo.getContactTypeProperties(int), for contact type segments instead of contact types.

Specified by:
getContactTypeSegmentProperties in interface ContactCenterInfo
Parameters:
k - the segment identifier.
Returns:
the map of properties.

getInContactTypeSegmentName

public String getInContactTypeSegmentName(int k)
Description copied from interface: ContactCenterInfo
Returns the name associated with the inbound contact type segment k, where k is a number greater than or equal to 0 and smaller than ContactCenterInfo.getNumInContactTypeSegments(). If no segment name is available, this returns null.

Specified by:
getInContactTypeSegmentName in interface ContactCenterInfo
Parameters:
k - the inbound contact type segment identifier.
Returns:
the segment name or null if no name is defined.

getInContactTypeSegmentProperties

public Map<String,String> getInContactTypeSegmentProperties(int k)
Description copied from interface: ContactCenterInfo
This method is similar to ContactCenterInfo.getContactTypeProperties(int), for inbound contact type segments instead of contact types.

Specified by:
getInContactTypeSegmentProperties in interface ContactCenterInfo
Parameters:
k - the segment identifier.
Returns:
the map of properties.

getMainPeriodSegmentName

public String getMainPeriodSegmentName(int mp)
Description copied from interface: ContactCenterInfo
Returns the name associated with the main period segment mp, where mp is a number greater than or equal to 0 and smaller than ContactCenterInfo.getNumMainPeriodSegments(). If no segment name is available, this returns null.

Specified by:
getMainPeriodSegmentName in interface ContactCenterInfo
Parameters:
mp - the main period segment identifier.
Returns:
the segment name or null if no name is defined.

getNumAgentGroupSegments

public int getNumAgentGroupSegments()
Description copied from interface: ContactCenterInfo
Returns the number of user-defined segments regrouping agent groups.

Specified by:
getNumAgentGroupSegments in interface ContactCenterInfo
Returns:
the number of segments regrouping agent groups.

getNumContactTypeSegments

public int getNumContactTypeSegments()
Description copied from interface: ContactCenterInfo
Returns the number of user-defined segments regrouping contact types.

Specified by:
getNumContactTypeSegments in interface ContactCenterInfo
Returns:
the number of segments regrouping contact types.

getNumInContactTypeSegments

public int getNumInContactTypeSegments()
Description copied from interface: ContactCenterInfo
Returns the number of user-defined segments regrouping inbound contact types.

Specified by:
getNumInContactTypeSegments in interface ContactCenterInfo
Returns:
the number of segments regrouping inbound contact types.

getNumMainPeriodSegments

public int getNumMainPeriodSegments()
Description copied from interface: ContactCenterInfo
Returns the number of user-defined segments regrouping main periods.

Specified by:
getNumMainPeriodSegments in interface ContactCenterInfo
Returns:
the number of segments regrouping main periods.

getNumOutContactTypeSegments

public int getNumOutContactTypeSegments()
Description copied from interface: ContactCenterInfo
Returns the number of user-defined segments regrouping outbound contact types.

Specified by:
getNumOutContactTypeSegments in interface ContactCenterInfo
Returns:
the number of segments regrouping outbound contact types.

getNumWaitingQueueSegments

public int getNumWaitingQueueSegments()
Description copied from interface: ContactCenterInfo
Returns the number of user-defined segments regrouping waiting queues.

The result of this method depends on the role of the waiting queues, which depends on the router's policy. For example, if waiting queues correspond to contact types, this returns the result of ContactCenterInfo.getNumContactTypeSegments().

Specified by:
getNumWaitingQueueSegments in interface ContactCenterInfo
Returns:
the number of segments regrouping waiting queues.

getNumContactTypesWithSegments

public int getNumContactTypesWithSegments()
Description copied from interface: ContactCenterInfo
Returns the number of contact types including segments regrouping several contact types. If K≤1, this returns the result of ContactCenterInfo.getNumContactTypes(). Otherwise, this returns the sum of ContactCenterInfo.getNumContactTypes(), ContactCenterInfo.getNumContactTypeSegments(), and 1.

Specified by:
getNumContactTypesWithSegments in interface ContactCenterInfo
Returns:
the number of contact types including segments.

getNumInContactTypesWithSegments

public int getNumInContactTypesWithSegments()
Description copied from interface: ContactCenterInfo
Returns the number of inbound contact types including segments regrouping several inbound contact types. If $ \Ki$≤1, this returns the result of ContactCenterInfo.getNumInContactTypes(). Otherwise, this returns the sum of ContactCenterInfo.getNumInContactTypes(), ContactCenterInfo.getNumInContactTypeSegments(), and 1.

Specified by:
getNumInContactTypesWithSegments in interface ContactCenterInfo
Returns:
the number of inbound contact types including segments.

getNumOutContactTypesWithSegments

public int getNumOutContactTypesWithSegments()
Description copied from interface: ContactCenterInfo
Returns the number of outbound contact types including segments regrouping several outbound contact types. If $ \Ko$≤1, this returns the result of ContactCenterInfo.getNumOutContactTypes(). Otherwise, this returns the sum of ContactCenterInfo.getNumOutContactTypes(), ContactCenterInfo.getNumOutContactTypeSegments(), and 1.

Specified by:
getNumOutContactTypesWithSegments in interface ContactCenterInfo
Returns:
the number of outbound contact types including segments.

getNumAgentGroupsWithSegments

public int getNumAgentGroupsWithSegments()
Description copied from interface: ContactCenterInfo
Returns the number of agent groups including segments regrouping several agent groups. If I≤1, this returns the result of ContactCenterInfo.getNumAgentGroups(). Otherwise, this returns the sum of ContactCenterInfo.getNumAgentGroups(), ContactCenterInfo.getNumAgentGroupSegments(), and 1.

Specified by:
getNumAgentGroupsWithSegments in interface ContactCenterInfo
Returns:
the number of agent groups including segments.

getNumMainPeriodsWithSegments

public int getNumMainPeriodsWithSegments()
Description copied from interface: ContactCenterInfo
Returns the number of main periods including segments regrouping several main periods. If P≤1, this returns the result of ContactCenterInfo.getNumMainPeriods(). Otherwise, this returns the sum of ContactCenterInfo.getNumMainPeriods(), ContactCenterInfo.getNumMainPeriodSegments(), and 1.

Specified by:
getNumMainPeriodsWithSegments in interface ContactCenterInfo
Returns:
the number of main periods including segments.

getNumWaitingQueuesWithSegments

public int getNumWaitingQueuesWithSegments()
Description copied from interface: ContactCenterInfo
Returns the number of waiting queues including segments regrouping several waiting queues. If the number of waiting queues is smaller than two, this returns the result of ContactCenterInfo.getNumWaitingQueues(). Otherwise, this returns the sum of ContactCenterInfo.getNumWaitingQueues(), ContactCenterInfo.getNumWaitingQueueSegments(), and 1.

Specified by:
getNumWaitingQueuesWithSegments in interface ContactCenterInfo
Returns:
the number of waiting queues including segments.

getOutContactTypeSegmentName

public String getOutContactTypeSegmentName(int k)
Description copied from interface: ContactCenterInfo
Returns the name associated with the outbound contact type segment k, where k is a number greater than or equal to 0 and smaller than ContactCenterInfo.getNumOutContactTypeSegments(). If no segment name is available, this returns null.

Specified by:
getOutContactTypeSegmentName in interface ContactCenterInfo
Parameters:
k - the outbound contact type segment identifier.
Returns:
the segment name or null if no name is defined.

getOutContactTypeSegmentProperties

public Map<String,String> getOutContactTypeSegmentProperties(int k)
Description copied from interface: ContactCenterInfo
This method is similar to ContactCenterInfo.getContactTypeProperties(int), for outbound contact type segments instead of contact types.

Specified by:
getOutContactTypeSegmentProperties in interface ContactCenterInfo
Parameters:
k - the segment identifier.
Returns:
the map of properties.

getWaitingQueueProperties

public Map<String,String> getWaitingQueueProperties(int q)
Description copied from interface: ContactCenterInfo
This method is similar to ContactCenterInfo.getContactTypeProperties(int), for waiting queues instead of contact types.

Specified by:
getWaitingQueueProperties in interface ContactCenterInfo
Parameters:
q - the waiting queue identifier.
Returns:
the map of properties.

getWaitingQueueSegmentName

public String getWaitingQueueSegmentName(int k)
Description copied from interface: ContactCenterInfo
Returns the name associated with the waiting queue segment q, where q is a number greater than or equal to 0 and smaller than ContactCenterInfo.getNumMainPeriodSegments(). If no segment name is available, this returns null.

Specified by:
getWaitingQueueSegmentName in interface ContactCenterInfo
Parameters:
k - the waiting queue segment identifier.
Returns:
the segment name or null if no name is defined.

getWaitingQueueSegmentProperties

public Map<String,String> getWaitingQueueSegmentProperties(int q)
Description copied from interface: ContactCenterInfo
This method is similar to ContactCenterInfo.getContactTypeProperties(int), for waiting queue segments instead of contact types.

Specified by:
getWaitingQueueSegmentProperties in interface ContactCenterInfo
Parameters:
q - the segment identifier.
Returns:
the map of properties.

getMatrixOfAWTName

public String getMatrixOfAWTName(int m)
Description copied from interface: ContactCenterInfo
Returns the name associated with the matrix of AWTs with index m. This method returns null if no name is associated with the matrix. This name can be used, e.g., to give the AWT if the same AWT is used for all contact types and periods.

Specified by:
getMatrixOfAWTName in interface ContactCenterInfo
Parameters:
m - the index of the matrix of AWTs.
Returns:
the name associated with the matrix.

ContactCenters
V. 0.9.9.

To submit a bug or ask questions, send an e-mail to Richard Simard.