ContactCenters
V. 0.9.9.

umontreal.iro.lecuyer.contactcenters.msk.model
Class DialerListWithLimits

java.lang.Object
  extended by umontreal.iro.lecuyer.contactcenters.msk.model.DialerListWithLimits
All Implemented Interfaces:
ContactFactory, DialerList

public class DialerListWithLimits
extends Object
implements DialerList

Represents a dialer list imposing limits on the number of calls to dial.


Constructor Summary
DialerListWithLimits(CallCenter cc, int k, DialerLimitParams... limits)
          Constructs a new dialer list with limits for the call center cc, call type k, and limits limits.
DialerListWithLimits(CallCenter cc, RandomTypeCallFactory factory, DialerLimitParams... limits)
          Constructs a new dialer list with limits for the call center cc, the call factory factory which generates calls of random types, and the limits limits.
 
Method Summary
 void clear()
          Clears the contents of this dialer list.
 Contact newInstance()
          Constructs and returns a new Contact object.
 Contact removeFirst(int[] contactTypes)
          Removes and returns the first contact with one of the desired types from the dialer list.
 int size(int[] contactTypes)
          Returns the number of contacts of desired types stored into this dialer list.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DialerListWithLimits

public DialerListWithLimits(CallCenter cc,
                            int k,
                            DialerLimitParams... limits)
Constructs a new dialer list with limits for the call center cc, call type k, and limits limits.

Parameters:
cc - the call center model.
k - the call type identifier.
limits - the dialer's limits.

DialerListWithLimits

public DialerListWithLimits(CallCenter cc,
                            RandomTypeCallFactory factory,
                            DialerLimitParams... limits)
Constructs a new dialer list with limits for the call center cc, the call factory factory which generates calls of random types, and the limits limits.

Parameters:
cc - the call center model.
factory - the random-type call factory.
limits - the dialer's limits.
Method Detail

clear

public void clear()
Description copied from interface: DialerList
Clears the contents of this dialer list. This method does not always reset the size of the list to 0. For example, this method has no effect in the case of infinite dialer lists. For dialer lists with limits on the number of dialed contacts, this resets the size to the maximum number of contacts allowed.

Specified by:
clear in interface DialerList

removeFirst

public Contact removeFirst(int[] contactTypes)
Description copied from interface: DialerList
Removes and returns the first contact with one of the desired types from the dialer list. If the list is empty or does not contain any contact of the desired types, this method must throw a NoSuchElementException. If contactTypes is null, any contact type is allowed. If contactTypes is non-null while the dialer list does not support restrictions to specific contact types, this throws an UnsupportedOperationException.

Specified by:
removeFirst in interface DialerList
Parameters:
contactTypes - the array of desired contact types.
Returns:
the removed contact.

newInstance

public Contact newInstance()
Description copied from interface: ContactFactory
Constructs and returns a new Contact object. If a contact cannot be instantiated, a ContactInstantiationException is thrown.

Specified by:
newInstance in interface ContactFactory
Returns:
the new contact object.

size

public int size(int[] contactTypes)
Description copied from interface: DialerList
Returns the number of contacts of desired types stored into this dialer list. This method counts and returns the number of stored contacts whose type identifiers correspond to one of the elements in the given contactTypes array. If the array is null, the check is applied for all contact types. If the size of the list is infinite, this must return Integer.MAX_VALUE. If the dialer list does not allow restriction to specific contact types, this method throws an UnsupportedOperationException.

Specified by:
size in interface DialerList
Parameters:
contactTypes - the array of desired contact types.
Returns:
the number of contacts in the dialer list.

ContactCenters
V. 0.9.9.

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