public class MultiDataObject extends DataObject
MultiDataObject.Entry. Each handler
has one primary entry and zero or more secondary entries.| Modifier and Type | Class and Description |
|---|---|
class |
MultiDataObject.Entry
Represents one file in a
group data object. |
DataObject.Container, DataObject.Factory, DataObject.RegistryPROP_COOKIE, PROP_FILES, PROP_HELP, PROP_MODIFIED, PROP_NAME, PROP_PRIMARY_FILE, PROP_TEMPLATE, PROP_VALID| Constructor and Description |
|---|
MultiDataObject(FileObject fo,
MultiFileLoader loader)
Create a MultiFileObject.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
addSecondaryEntry(MultiDataObject.Entry fe)
Add a new secondary entry to the list.
|
protected Node |
createNodeDelegate()
Provides node that should represent this data object.
|
Set<FileObject> |
files()
Get all contained files.
|
MultiDataObject.Entry |
findSecondaryEntry(FileObject fo)
For a given file, find the associated secondary entry.
|
<T extends Node.Cookie> |
getCookie(Class<T> type)
Look for a cookie in the current cookie set matching the requested class.
|
protected CookieSet |
getCookieSet()
Get the set of cookies.
|
HelpCtx |
getHelpCtx()
Get help context for this object.
|
MultiFileLoader |
getMultiFileLoader()
Getter for the multi file loader that created this
object.
|
MultiDataObject.Entry |
getPrimaryEntry()
Get the primary entry.
|
protected DataObject |
handleCopy(DataFolder df)
Copies primary and secondary files to new folder.
|
protected DataObject |
handleCopyRename(DataFolder df,
String name,
String ext)
Copy and rename this object to a folder (implemented by subclasses).
|
protected DataObject |
handleCreateFromTemplate(DataFolder df,
String name)
Create a new data object from template (implemented in subclasses).
|
protected void |
handleDelete()
Delete this object (implemented by subclasses).
|
protected FileObject |
handleMove(DataFolder df)
Moves primary and secondary files to a new folder.
|
protected FileObject |
handleRename(String name)
Rename this object (implemented in subclasses).
|
boolean |
isCopyAllowed()
Test whether the object may be copied.
|
boolean |
isDeleteAllowed()
Test whether the object may be deleted.
|
boolean |
isMoveAllowed()
Test whether the object may be moved.
|
boolean |
isRenameAllowed()
Test whether the object may be renamed.
|
protected MultiDataObject.Entry |
registerEntry(FileObject fo)
Tests whether this file is between entries and if not,
creates a secondary entry for it and adds it into set of
secondary entries.
|
protected void |
removeSecondaryEntry(MultiDataObject.Entry fe)
Remove a secondary entry from the list.
|
Set<MultiDataObject.Entry> |
secondaryEntries()
Get secondary entries.
|
protected void |
setCookieSet(CookieSet s)
Deprecated.
just use getCookieSet().add(...) instead
|
protected FileLock |
takePrimaryFileLock()
Obtains lock for primary file.
|
addPropertyChangeListener, addVetoableChangeListener, copy, createFromTemplate, createFromTemplate, createFromTemplate, createShadow, delete, dispose, find, firePropertyChange, fireVetoableChange, getCookie, getFolder, getLoader, getLookup, getName, getNodeDelegate, getPrimaryFile, getRegistry, handleCreateShadow, isModified, isShadowAllowed, isTemplate, isValid, markFiles, move, removePropertyChangeListener, removeVetoableChangeListener, rename, setModified, setTemplate, setValid, toString, writeReplacepublic MultiDataObject(FileObject fo, MultiFileLoader loader) throws DataObjectExistsException
fo - the primary file objectloader - loader of this data objectDataObjectExistsExceptionDataObject.DataObject(org.openide.filesystems.FileObject,org.openide.loaders.DataLoader)public final MultiFileLoader getMultiFileLoader()
public Set<FileObject> files()
DataObjectThe default implementation returns a set consisting only of the primary file.
files in class DataObjectpublic boolean isDeleteAllowed()
DataObjectisDeleteAllowed in class DataObjecttrue if it maypublic boolean isCopyAllowed()
DataObjectisCopyAllowed in class DataObjecttrue if it maypublic boolean isMoveAllowed()
DataObjectisMoveAllowed in class DataObjecttrue if it maypublic boolean isRenameAllowed()
DataObjectisRenameAllowed in class DataObjecttrue if it maypublic HelpCtx getHelpCtx()
DataObjectgetHelpCtx in interface HelpCtx.ProvidergetHelpCtx in class DataObjectprotected Node createNodeDelegate()
createNodeDelegate in class DataObjectDataNodeprotected final void addSecondaryEntry(MultiDataObject.Entry fe)
fe - the entry to addprotected final void removeSecondaryEntry(MultiDataObject.Entry fe)
fe - the entry to removeprotected final MultiDataObject.Entry registerEntry(FileObject fo)
This method should be used in constructor of MultiDataObject to
register all the important files, that could belong to this data object.
As example, our XMLDataObject, tries to locate its xmlinfo
file and then do register it
fo - the file to register (can be null, then the action is ignored)public final MultiDataObject.Entry getPrimaryEntry()
public final Set<MultiDataObject.Entry> secondaryEntries()
public final MultiDataObject.Entry findSecondaryEntry(FileObject fo)
fo - file objectnull if there is no
such entryprotected FileLock takePrimaryFileLock() throws IOException
DataObjecttakePrimaryFileLock in class DataObjectIOException - if taking the lock failsprotected DataObject handleCopy(DataFolder df) throws IOException
handleCopy in class DataObjectdf - the new folderIOException - if there was a problem copyingUserCancelException - if the user cancelled the copyprotected void handleDelete()
throws IOException
DataObjecthandleDelete in class DataObjectIOException - if an error occuresprotected FileObject handleRename(String name) throws IOException
DataObjecthandleRename in class DataObjectname - name to rename the object toIOException - if an error occuresprotected FileObject handleMove(DataFolder df) throws IOException
handleMove in class DataObjectdf - the new folderIOException - if there was a problem movingUserCancelException - if the user cancelled the moveprotected DataObject handleCreateFromTemplate(DataFolder df, String name) throws IOException
DataObjecthandleCreateFromTemplate in class DataObjectdf - data folder to create object inname - name to give to the new object (or null
if the name should be chosen according to the template)IOException - if an error occuredprotected DataObject handleCopyRename(DataFolder df, String name, String ext) throws IOException
DataObjecthandleCopyRename in class DataObjectdf - target foldername - new file nameext - new file extensionIOException - if an error occures or the file cannot be copied/renamed@Deprecated protected final void setCookieSet(CookieSet s)
DataObject.PROP_COOKIE.s - the cookie set to useprotected final CookieSet getCookieSet()
setCookieSet(org.openide.nodes.CookieSet), that set
is returned. Otherwise an empty set is
returned.null)public <T extends Node.Cookie> T getCookie(Class<T> type)
getCookie in class DataObjecttype - the class to look fornull if this class of cookie
is not supportedBuilt on August 24 2014. | Portions Copyright 1997-2014 Sun Microsystems, Inc. All rights reserved.