DiscoveryGroupManagement Interface Requirements

 

ID

DiscoveryGroupManagement Interface Requirement

Section

Comments

  1.  

The methods that modify the managed set of groups each take a single input parameter: a String array, none of whose elements may be null.

2.4.1

Func. Tests: DMAR

  1.  

The empty set is denoted by the empty array,

"

IF Tests: DGMIF

Func. Tests: DMAR, DGMAR1, DGMAR2

  1.  

… and “no set” is indicated by null. No set indicates that all lookup services within the multicast radius of the implementation object should be discovered.

"

IF Tests: DGMIF

Func. Tests: DMAR, , DGMAR2

  1.  

Invoking any of these methods with an input array that contains duplicate group names is equivalent to performing the invocation with the duplicates removed from the array.

"

IF Tests: DGMIF

Func. Tests: DMAR, , DGMAR2

  1.  

The getGroups method returns an array consisting of the names of the groups in the managed set.

"

IF Tests: DGMIF

Func. Tests: DMAR, DGMAR1, DGMAR2

  1.  

The getGroups … If the managed set of groups is empty, this method will return the empty array.

"

IF Tests: DGMIF

Func. Tests: DMAR, DGMAR2

  1.  

The getGroups … This method takes no arguments as input, and will return a new array upon each invocation.

"

IF Tests: DGMIF,

Func. Tests: DGMAR2

  1.  

The addGroups method adds a set of group names to the managed set.

"

IF Tests: DGMIF,

Func. Tests: DGMAR2

  1.  

The addGroups … Once a new name is added to the managed set, attempts will be made to discover all (as yet) undiscovered lookup services that are members of the group having that name.

"

IF Tests: 

Func. Tests: DGMAR2

  1.  

The addGroups … The entity must have DiscoveryPermission on each of the groups in the new set or a SecurityException will be propagated through this method.

"

 

  1.  

The addGroups … This method throws IOException. This is because an invocation of this method may result in the re-initiation of the discovery process, a process that can throw IOException when socket allocation occurs.

"

 

  1.  

The addGroups … This method throws an UnsupportedOperationException if there is no managed set of groups to augment.

"

IF Tests: DGMIF

Func. Tests: DGMAR2

  1.  

The addGroups … If null is input, this method throws a NullPointerException.

"

IF Tests: DGMIF

Func. Tests: DGMAR2

  1.  

The addGroups … If the empty array is input, the managed set of groups will not change.

"

IF Tests: DGMIF

Func. Tests: DGMAR2

  1.  

The setGroups method replaces all of the group names in the managed set with names from a new set.

"

IF Tests: DGMIF

Func. Tests: DGMAR2

  1.  

The setGroups … Once a new group name has been placed in the managed set, the entity will not be notified for lookup services belonging to that group that have already been discovered.

 

Func. Tests: DGMAR2

  1.  

The setGroups … Attempts to discover all (as yet) undiscovered lookup services belonging to that group will continue to be made.

 

Func. Tests: DGMAR2

  1.  

The setGroups … If null is input to setGroups, then attempts will be made to discover all (as yet) undiscovered lookup services located within the multicast radius of the implementation object.

 

Func. Tests: DMAR, DGMAR1, DGMAR2

  1.  

The setGroups … If the empty array is input, then group discovery will cease.

 

Func. Tests: DMAR, DGMAR1, DGMAR2

  1.  

The setGroups … The entity must have DiscoveryPermission on each of the groups in the new set or a SecurityException will be propagated through this method.

 

 

  1.  

This method throws IOException. This is because an invocation of this method may result in the re-initiation of the discovery process, a process that can throw IOException when socket allocation occurs.

 

 

  1.  

The removeGroups method deletes a set of group names from the managed set of groups.

 

IF Tests: DGMIF

Func. Tests: DGMAR2

  1.  

The removeGroups … This method throws an UnsupportedOperationException if there is no managed set of groups from which to remove elements.

 

IF Tests: DGMIF

Func. Tests: DGMAR2

  1.  

The removeGroups … If null is input to removeGroups, a NullPointerException will be thrown. If the empty array is input, the managed set of groups will not change.

 

IF Tests: DGMIF

Func. Tests: DGMAR2

  1.  

The removeGroups … If the empty array is input, the managed set of groups will not change.

 

IF Tests: DGMIF

Func. Tests: DGMAR2

  1.  

Any already-discovered lookup service that is a member of one or more group(s) removed from the managed set by either setGroups or removeGroups will be discarded and will not be eligible for discovery;

 

Func. Tests: DMAR

Func. Tests: DGMAR2