Class BasicDirectoryModel

All Implemented Interfaces:
PropertyChangeListener, Serializable, EventListener, ListModel<Object>
public class BasicDirectoryModel
extends AbstractListModel<Object>
implements PropertyChangeListener

Basic implementation of a file list.

See Also:
Serialized Form

Field Summary

Fields declared in class javax.swing.AbstractListModel

listenerList

Constructor Summary

Constructors
Constructor Description
BasicDirectoryModel​(JFileChooser filechooser)

Constructs a new instance of BasicDirectoryModel.

Method Summary

All Methods Instance Methods Concrete Methods
Modifier and Type Method Description
void addPropertyChangeListener​(PropertyChangeListener listener)

Adds a PropertyChangeListener to the listener list.

boolean contains​(Object o)

Returns true if an element o is in file cache, otherwise, returns false.

void fireContentsChanged()

Invoked when a content is changed.

protected void firePropertyChange​(String propertyName, Object oldValue, Object newValue)

Support for reporting bound property changes for boolean properties.

Vector<File> getDirectories()

Returns a list of directories.

Vector<File> getFiles()

Returns a list of files.

PropertyChangeListener[] getPropertyChangeListeners()

Returns an array of all the property change listeners registered on this component.

int indexOf​(Object o)

Returns an index of element o in file cache.

void intervalAdded​(ListDataEvent e)

Obsolete - not used.

void intervalRemoved​(ListDataEvent e)

Obsolete - not used.

void invalidateFileCache()

This method is used to interrupt file loading thread.

protected boolean lt​(File a, File b)

Obsolete - not used

void removePropertyChangeListener​(PropertyChangeListener listener)

Removes a PropertyChangeListener from the listener list.

boolean renameFile​(File oldFile, File newFile)

Renames a file in the underlying file system.

protected void sort​(Vector<? extends File> v)

Sorts a list of files.

void validateFileCache()

Validates content of file cache.

Methods declared in class javax.swing.AbstractListModel

addListDataListener, fireContentsChanged, fireIntervalAdded, fireIntervalRemoved, getListDataListeners, getListeners, removeListDataListener

Methods declared in class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Methods declared in interface javax.swing.ListModel

getElementAt, getSize

Methods declared in interface java.beans.PropertyChangeListener

propertyChange

Constructor Detail

BasicDirectoryModel

public BasicDirectoryModel​(JFileChooser filechooser)

Constructs a new instance of BasicDirectoryModel.

Parameters:
filechooser - an instance of {JFileChooser}

Method Detail

invalidateFileCache

public void invalidateFileCache()

This method is used to interrupt file loading thread.

getDirectories

public Vector<File> getDirectories()

Returns a list of directories.

Returns:
a list of directories

getFiles

public Vector<File> getFiles()

Returns a list of files.

Returns:
a list of files

validateFileCache

public void validateFileCache()

Validates content of file cache.

renameFile

public boolean renameFile​(File oldFile,
                          File newFile)

Renames a file in the underlying file system.

Parameters:
oldFile - a File object representing the existing file
newFile - a File object representing the desired new file name
Returns:
true if rename succeeded, otherwise false
Since:
1.4

fireContentsChanged

public void fireContentsChanged()

Invoked when a content is changed.

contains

public boolean contains​(Object o)

Returns true if an element o is in file cache, otherwise, returns false.

Parameters:
o - an element
Returns:
true if an element o is in file cache

indexOf

public int indexOf​(Object o)

Returns an index of element o in file cache.

Parameters:
o - an element
Returns:
an index of element o in file cache

intervalAdded

public void intervalAdded​(ListDataEvent e)

Obsolete - not used.

Parameters:
e - list data event

intervalRemoved

public void intervalRemoved​(ListDataEvent e)

Obsolete - not used.

Parameters:
e - list data event

sort

protected void sort​(Vector<? extends File> v)

Sorts a list of files.

Parameters:
v - a list of files

lt

protected boolean lt​(File a,
                     File b)

Obsolete - not used

Parameters:
a - a file
b - another file
Returns:
a comparison of the file names

addPropertyChangeListener

public void addPropertyChangeListener​(PropertyChangeListener listener)

Adds a PropertyChangeListener to the listener list. The listener is registered for all bound properties of this class.

If listener is null, no exception is thrown and no action is performed.

Parameters:
listener - the property change listener to be added
Since:
1.6
See Also:
removePropertyChangeListener(java.beans.PropertyChangeListener), getPropertyChangeListeners()

removePropertyChangeListener

public void removePropertyChangeListener​(PropertyChangeListener listener)

Removes a PropertyChangeListener from the listener list.

If listener is null, no exception is thrown and no action is performed.

Parameters:
listener - the PropertyChangeListener to be removed
Since:
1.6
See Also:
addPropertyChangeListener(java.beans.PropertyChangeListener), getPropertyChangeListeners()

getPropertyChangeListeners

public PropertyChangeListener[] getPropertyChangeListeners()

Returns an array of all the property change listeners registered on this component.

Returns:
all of this component's PropertyChangeListeners or an empty array if no property change listeners are currently registered
Since:
1.6
See Also:
addPropertyChangeListener(java.beans.PropertyChangeListener), removePropertyChangeListener(java.beans.PropertyChangeListener), PropertyChangeSupport.getPropertyChangeListeners()

firePropertyChange

protected void firePropertyChange​(String propertyName,
                                  Object oldValue,
                                  Object newValue)

Support for reporting bound property changes for boolean properties. This method can be called when a bound property has changed and it will send the appropriate PropertyChangeEvent to any registered PropertyChangeListeners.

Parameters:
propertyName - the property whose value has changed
oldValue - the property's previous value
newValue - the property's new value
Since:
1.6