ContactCenters
V. 0.9.9.

umontreal.iro.lecuyer.contactcenters.dialer
Class InfiniteDialerList

java.lang.Object
  extended by umontreal.iro.lecuyer.contactcenters.dialer.InfiniteDialerList
All Implemented Interfaces:
ContactFactory, DialerList

public class InfiniteDialerList
extends Object
implements DialerList

Implements the DialerList interface for an infinite dialer list whose elements are produced using a contact factory. This list can be used when there is no defined model for the calls made by the dialer.


Constructor Summary
InfiniteDialerList(ContactFactory factory)
          Constructs a new infinite dialer list whose contacts are instantiated using the contact factory factory.
 
Method Summary
 void clear()
          Clears the contents of this dialer list.
 ContactFactory getContactFactory()
          Returns the contact factory associated with 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.
 void setContactFactory(ContactFactory factory)
          Sets the contact factory used to instantiate contacts to factory.
 int size(int[] contactTypes)
          Returns the number of contacts of desired types stored into this dialer list.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

InfiniteDialerList

public InfiniteDialerList(ContactFactory factory)
Constructs a new infinite dialer list whose contacts are instantiated using the contact factory factory.

Parameters:
factory - the contact factory used to instantiate contacts.
Throws:
NullPointerException - if factory is null.
Method Detail

getContactFactory

public ContactFactory getContactFactory()
Returns the contact factory associated with this dialer list.

Returns:
the associated contact factory.

setContactFactory

public void setContactFactory(ContactFactory factory)
Sets the contact factory used to instantiate contacts to factory.

Parameters:
factory - the new contact factory.
Throws:
NullPointerException - if factory is null.

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.

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.

toString

public String toString()
Overrides:
toString in class Object

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

ContactCenters
V. 0.9.9.

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