lacam.container
Class ClassLibraryContainer

java.lang.Object
  extended byjava.util.AbstractCollection
      extended byjava.util.AbstractList
          extended byjava.util.Vector
              extended bylacam.container.ClassLibraryContainer
All Implemented Interfaces:
java.lang.Cloneable, java.util.Collection, java.util.List, java.util.RandomAccess, java.io.Serializable, javax.swing.tree.TreeModel

public class ClassLibraryContainer
extends java.util.Vector
implements javax.swing.tree.TreeModel

Extended Vector to manage the plugin classes library. Also implements the TreeModel interface so it can be added to any JTreem for exploring.

Author:
Dimitrij Zub
See Also:
LibraryManager.getTreeModelInstance(), Serialized Form

Constructor Summary
ClassLibraryContainer()
           
 
Method Summary
 boolean add(java.lang.Object o)
          Override the add method from java.util.Vector to allow only ClassDescriptors to be added
 void addTreeModelListener(javax.swing.event.TreeModelListener l)
           
 java.lang.Object getChild(java.lang.Object parent, int index)
           
 int getChildCount(java.lang.Object parent)
           
 ClassDescriptor getClass(java.lang.String name, java.lang.String version)
           
 java.util.Vector getClassesByName(java.lang.String name)
           
 java.util.Vector getClassesByVersion(java.lang.String version)
           
 ClassDescriptor[] getClassesForPurpose(java.lang.String purpose)
           
 int getIndexOfChild(java.lang.Object parent, java.lang.Object child)
           
 java.lang.Object getRoot()
           
 boolean isLeaf(java.lang.Object node)
           
 void removeTreeModelListener(javax.swing.event.TreeModelListener l)
           
 java.lang.String toString()
           
 void valueForPathChanged(javax.swing.tree.TreePath path, java.lang.Object newValue)
           
 
Methods inherited from class java.util.Vector
add, addAll, addAll, addElement, capacity, clear, clone, contains, containsAll, copyInto, elementAt, elements, ensureCapacity, equals, firstElement, get, hashCode, indexOf, indexOf, insertElementAt, isEmpty, lastElement, lastIndexOf, lastIndexOf, remove, remove, removeAll, removeAllElements, removeElement, removeElementAt, retainAll, set, setElementAt, setSize, size, subList, toArray, toArray, trimToSize
 
Methods inherited from class java.util.AbstractList
iterator, listIterator, listIterator
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.List
iterator, listIterator, listIterator
 

Constructor Detail

ClassLibraryContainer

public ClassLibraryContainer()
Method Detail

getClassesByVersion

public java.util.Vector getClassesByVersion(java.lang.String version)
Returns:
All classes matching to the version (should be only one)

getClassesByName

public java.util.Vector getClassesByName(java.lang.String name)
Returns:
All classes matching the name

getClass

public ClassDescriptor getClass(java.lang.String name,
                                java.lang.String version)
Returns:
A class mathing the given name and the given version

add

public boolean add(java.lang.Object o)
Override the add method from java.util.Vector to allow only ClassDescriptors to be added

Specified by:
add in interface java.util.List

getClassesForPurpose

public ClassDescriptor[] getClassesForPurpose(java.lang.String purpose)
Parameters:
purpose - The process type to look for.
Returns:
All classes with the given process type.

getRoot

public java.lang.Object getRoot()
Specified by:
getRoot in interface javax.swing.tree.TreeModel

getChildCount

public int getChildCount(java.lang.Object parent)
Specified by:
getChildCount in interface javax.swing.tree.TreeModel

isLeaf

public boolean isLeaf(java.lang.Object node)
Specified by:
isLeaf in interface javax.swing.tree.TreeModel

getChild

public java.lang.Object getChild(java.lang.Object parent,
                                 int index)
Specified by:
getChild in interface javax.swing.tree.TreeModel

getIndexOfChild

public int getIndexOfChild(java.lang.Object parent,
                           java.lang.Object child)
Specified by:
getIndexOfChild in interface javax.swing.tree.TreeModel

addTreeModelListener

public void addTreeModelListener(javax.swing.event.TreeModelListener l)
Specified by:
addTreeModelListener in interface javax.swing.tree.TreeModel

removeTreeModelListener

public void removeTreeModelListener(javax.swing.event.TreeModelListener l)
Specified by:
removeTreeModelListener in interface javax.swing.tree.TreeModel

valueForPathChanged

public void valueForPathChanged(javax.swing.tree.TreePath path,
                                java.lang.Object newValue)
Specified by:
valueForPathChanged in interface javax.swing.tree.TreeModel

toString

public java.lang.String toString()