Remote Systems
v6.4.1

com.ibm.etools.systems.filters
Interface SystemFilterPoolReferenceManager

All Superinterfaces:
SystemPersistableReferenceManager
All Known Implementing Classes:
SystemFilterPoolReferenceManagerImpl

public interface SystemFilterPoolReferenceManager
extends SystemPersistableReferenceManager


Field Summary
static String copyright
           
 
Method Summary
 SystemFilterPoolReference addReferenceToSystemFilterPool(SystemFilterPool filterPool)
          Given a filter pool, create a referencing object and add it to the list.
 int addSystemFilterPoolReference(SystemFilterPoolReference filterPoolReference)
          Add a filter pool referencing object to the list.
 SystemFilterPoolReference createSystemFilterPoolReference(SystemFilterPool filterPool)
          Create a filter pool referencing object, but do NOT add it to the list, do NOT call back.
 SystemFilterPoolManager[] getAdditionalSystemFilterPoolManagers()
          Get the managers of the master list of filter pools, from which objects in this list reference, but which are not in the list of managers our pool manager supplier gives us.
 SystemFilterPoolManager getDefaultSystemFilterPoolManager()
          Get the default manager of the master list of filter pools, from which objects in this list reference.
 IFolder getFolder()
          Return the folder that this manager is contained in.
 SystemFilterPoolReferenceManagerProvider getProvider()
          Get the object which instantiated this instance of the filter pool reference manager.
 SystemFilterPool[] getReferencedSystemFilterPools()
          Return array of filter pools currently referenced by this manager Result will never be null, although it may be an array of length zero.
 SystemFilterPoolReference getReferenceToSystemFilterPool(SystemFilterPool filterPool)
          Given a filter pool, locate the referencing object for it and return it.
 SystemFilterPoolManagerProvider getSystemFilterPoolManagerProvider()
          Get the associated master pool manager provider.
 SystemFilterPoolManager[] getSystemFilterPoolManagers()
          Get the managers of the master list of filter pools, from which objects in this list reference.
 int getSystemFilterPoolReferenceCount()
          Return count of referenced filter pools
 int getSystemFilterPoolReferencePosition(SystemFilterPoolReference filterPoolRef)
          Return the zero-based position of a SystemFilterPoolReference object within this list
 SystemFilterPoolReference[] getSystemFilterPoolReferences()
          Return array of SystemFilterPoolReference objects.
 SystemFilterReference getSystemFilterReference(SystemFilter filter)
          Create a single filter refererence to a given filter.
 int getSystemFilterReferencePosition(SystemFilter filter)
          Given a filter, return its position within this reference manager when you think of all filter references from all filter pool references as being concatenated
 int getSystemFilterReferencePosition(SystemFilterReference filterRef)
          Given a filter reference, return its position within this reference manager when you think of all filter references from all filter pool references as being concatenated
 SystemFilterReference[] getSystemFilterReferences()
          Concatenate all filter references from all filter pools we reference, into one big list.
 boolean isSystemFilterPoolReferenced(SystemFilterPool filterPool)
          Return true if the given filter pool has a referencing object in this list.
 void moveSystemFilterPoolReference(SystemFilterPoolReference filterPoolRef, int pos)
          Move a given filter pool reference to a given zero-based location Calls back to inform provider
 void moveSystemFilterPoolReferences(SystemFilterPoolReference[] filterPoolRefs, int delta)
          Move existing filter pool references a given number of positions.
 void regenerateReferencedSystemFilterPoolNames()
          Ask each referenced pool for its name, and update it.
 int removeReferenceToSystemFilterPool(SystemFilterPool filterPool)
          Given a filter pool, locate the referencing object for it and remove it from the list.
 int removeSystemFilterPoolReference(SystemFilterPoolReference filterPoolReference, boolean deReference)
          Remove a filter pool referencing object from the list.
 void renameReferenceToSystemFilterPool(SystemFilterPool pool)
          A reference filter pool has been renamed.
 void resetManagerFolder(IFolder newFolder)
          Reset the folder that this manager is contained in.
 void resetSystemFilterPoolReference(SystemFilterPoolReference filterPoolReference, SystemFilterPool newPool)
          Reset the filter pool a reference points to.
 Vector resolveReferencesAfterRestore(SystemFilterPoolManagerProvider relatedPoolMgrProvider, SystemFilterPoolReferenceManagerProvider provider)
          After restoring this from disk, there is only the referenced object name, not the referenced object pointer, for each referencing object.
 void save()
          Save all the filter pool references to disk.
 void setDefaultSystemFilterPoolManager(SystemFilterPoolManager mgr)
          Set the default manager of the master list of filter pools, from which objects in this list reference.
 void setProvider(SystemFilterPoolReferenceManagerProvider caller)
          Set the object which instantiated this instance of the filter pool reference manager.
 void setProviderEventNotification(boolean fireEvents)
          Turn off callbacks to the provider until turned on again.
 void setSystemFilterPoolManagerProvider(SystemFilterPoolManagerProvider poolMgrProvider)
          Set the associated master pool manager provider.
 void setSystemFilterPoolReferences(SystemFilterPool[] filterPools, boolean deReference)
          In one shot, set the filter pool references to new references to supplied filter pools.
 void setSystemFilterPoolReferences(SystemFilterPoolReference[] filterPoolReferences, boolean deReference)
          In one shot, set the filter pool references Calls back to inform provider
 
Methods inherited from interface com.ibm.etools.systems.references.SystemPersistableReferenceManager
addReferencingObject, getName, getReferencedObject, getReferencingObjectCount, getReferencingObjectList, getReferencingObjectPosition, getReferencingObjects, isReferenced, moveReferencingObjectPosition, removeAllReferencingObjects, removeAndDeReferenceAllReferencingObjects, removeAndDeReferenceReferencingObject, removeReferencingObject, resolveReferencesAfterRestore, save, setName, setReferencingObjects
 

Field Detail

copyright

public static final String copyright
See Also:
Constant Field Values
Method Detail

getProvider

public SystemFilterPoolReferenceManagerProvider getProvider()
Get the object which instantiated this instance of the filter pool reference manager. This is also available from any filter reference framework object.


setProvider

public void setProvider(SystemFilterPoolReferenceManagerProvider caller)
Set the object which instantiated this instance of the filter pool reference manager. This makes it available to retrieve from any filter reference framework object, via the ubiquitous getProvider interface method.


setProviderEventNotification

public void setProviderEventNotification(boolean fireEvents)
Turn off callbacks to the provider until turned on again.


setSystemFilterPoolManagerProvider

public void setSystemFilterPoolManagerProvider(SystemFilterPoolManagerProvider poolMgrProvider)
Set the associated master pool manager provider. Note the provider typically manages multiple pool managers and we manage references across those.


getSystemFilterPoolManagerProvider

public SystemFilterPoolManagerProvider getSystemFilterPoolManagerProvider()
Get the associated master pool manager provider. Note the provider typically manages multiple pool managers and we manage references across those.


getSystemFilterPoolManagers

public SystemFilterPoolManager[] getSystemFilterPoolManagers()
Get the managers of the master list of filter pools, from which objects in this list reference.


getAdditionalSystemFilterPoolManagers

public SystemFilterPoolManager[] getAdditionalSystemFilterPoolManagers()
Get the managers of the master list of filter pools, from which objects in this list reference, but which are not in the list of managers our pool manager supplier gives us. That is, these are references to filter pools outside the expected list.

Returns:
null if no unmatched managers found, else an array of such managers.

setDefaultSystemFilterPoolManager

public void setDefaultSystemFilterPoolManager(SystemFilterPoolManager mgr)
Set the default manager of the master list of filter pools, from which objects in this list reference.


getDefaultSystemFilterPoolManager

public SystemFilterPoolManager getDefaultSystemFilterPoolManager()
Get the default manager of the master list of filter pools, from which objects in this list reference.


regenerateReferencedSystemFilterPoolNames

public void regenerateReferencedSystemFilterPoolNames()
Ask each referenced pool for its name, and update it. Called after the name of the pool or its manager changes.


getSystemFilterPoolReferences

public SystemFilterPoolReference[] getSystemFilterPoolReferences()
Return array of SystemFilterPoolReference objects. Result will never be null, although it may be an array of length zero.


setSystemFilterPoolReferences

public void setSystemFilterPoolReferences(SystemFilterPoolReference[] filterPoolReferences,
                                          boolean deReference)
In one shot, set the filter pool references

Calls back to inform provider

Parameters:
deReference - true to first de-reference all objects in the existing list.

createSystemFilterPoolReference

public SystemFilterPoolReference createSystemFilterPoolReference(SystemFilterPool filterPool)
Create a filter pool referencing object, but do NOT add it to the list, do NOT call back.


addSystemFilterPoolReference

public int addSystemFilterPoolReference(SystemFilterPoolReference filterPoolReference)
Add a filter pool referencing object to the list.

Returns:
the new count of referencing objects

resetSystemFilterPoolReference

public void resetSystemFilterPoolReference(SystemFilterPoolReference filterPoolReference,
                                           SystemFilterPool newPool)
Reset the filter pool a reference points to. Called on a move-filter-pool operation


removeSystemFilterPoolReference

public int removeSystemFilterPoolReference(SystemFilterPoolReference filterPoolReference,
                                           boolean deReference)
Remove a filter pool referencing object from the list.

Parameters:
deReference - true if we want to dereference the referenced object (call removeReference on it)
Returns:
the new count of referencing objects

getSystemFilterPoolReferenceCount

public int getSystemFilterPoolReferenceCount()
Return count of referenced filter pools


getSystemFilterPoolReferencePosition

public int getSystemFilterPoolReferencePosition(SystemFilterPoolReference filterPoolRef)
Return the zero-based position of a SystemFilterPoolReference object within this list


moveSystemFilterPoolReference

public void moveSystemFilterPoolReference(SystemFilterPoolReference filterPoolRef,
                                          int pos)
Move a given filter pool reference to a given zero-based location

Calls back to inform provider


moveSystemFilterPoolReferences

public void moveSystemFilterPoolReferences(SystemFilterPoolReference[] filterPoolRefs,
                                           int delta)
Move existing filter pool references a given number of positions. If the delta is negative, they are all moved up by the given amount. If positive, they are all moved down by the given amount.

Calls back to inform provider

Parameters:
filterPoolRefs - Array of SystemFilterPoolReferences to move.

getReferencedSystemFilterPools

public SystemFilterPool[] getReferencedSystemFilterPools()
Return array of filter pools currently referenced by this manager Result will never be null, although it may be an array of length zero.


isSystemFilterPoolReferenced

public boolean isSystemFilterPoolReferenced(SystemFilterPool filterPool)
Return true if the given filter pool has a referencing object in this list.


getReferenceToSystemFilterPool

public SystemFilterPoolReference getReferenceToSystemFilterPool(SystemFilterPool filterPool)
Given a filter pool, locate the referencing object for it and return it.

Returns:
the referencing object if found, else null

addReferenceToSystemFilterPool

public SystemFilterPoolReference addReferenceToSystemFilterPool(SystemFilterPool filterPool)
Given a filter pool, create a referencing object and add it to the list.

Calls back to inform provider

Returns:
new filter pool reference

removeReferenceToSystemFilterPool

public int removeReferenceToSystemFilterPool(SystemFilterPool filterPool)
Given a filter pool, locate the referencing object for it and remove it from the list.

Calls back to inform provider

Returns:
the new count of referencing objects

renameReferenceToSystemFilterPool

public void renameReferenceToSystemFilterPool(SystemFilterPool pool)
A reference filter pool has been renamed. Update our stored name...

Calls back to inform provider


setSystemFilterPoolReferences

public void setSystemFilterPoolReferences(SystemFilterPool[] filterPools,
                                          boolean deReference)
In one shot, set the filter pool references to new references to supplied filter pools.

Calls back to inform provider

Parameters:
deReference - true to first de-reference all objects in the existing list.

getSystemFilterReference

public SystemFilterReference getSystemFilterReference(SystemFilter filter)
Create a single filter refererence to a given filter. Needed when a filter is added to a pool, and the GUI is not showing pools but rather all filters in all pool references.


getSystemFilterReferences

public SystemFilterReference[] getSystemFilterReferences()
Concatenate all filter references from all filter pools we reference, into one big list.


getSystemFilterReferencePosition

public int getSystemFilterReferencePosition(SystemFilterReference filterRef)
Given a filter reference, return its position within this reference manager when you think of all filter references from all filter pool references as being concatenated


getSystemFilterReferencePosition

public int getSystemFilterReferencePosition(SystemFilter filter)
Given a filter, return its position within this reference manager when you think of all filter references from all filter pool references as being concatenated


resolveReferencesAfterRestore

public Vector resolveReferencesAfterRestore(SystemFilterPoolManagerProvider relatedPoolMgrProvider,
                                            SystemFilterPoolReferenceManagerProvider provider)
After restoring this from disk, there is only the referenced object name, not the referenced object pointer, for each referencing object.

This method is called after restore and for each restored object in the list must:

  1. Do what is necessary to find the referenced object, and set the internal reference pointer.
  2. Call addReference(this) on that object so it can maintain it's in-memory list of all referencing objects.
  3. Set the important transient variables

Parameters:
provider - the host of this reference manager, so you can later call getProvider
Returns:
A Vector of SystemFilterPoolReferences that were not successfully resolved, or null if all were resolved.

save

public void save()
          throws Exception
Save all the filter pool references to disk. Use only if not doing your own saving, else override or set save policy to none.

Throws:
Exception

getFolder

public IFolder getFolder()
Return the folder that this manager is contained in.


resetManagerFolder

public void resetManagerFolder(IFolder newFolder)
Reset the folder that this manager is contained in.


Remote Systems
v6.4.1

Copyright © 2005 IBM Corp. All Rights Reserved.

Note: This documentation is for part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.