|
org.openide.filesystems 7.1 | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.openide.filesystems.FileSystem
org.openide.filesystems.AbstractFileSystem
org.openide.filesystems.XMLFileSystem
public final class XMLFileSystem
XML-based filesystem.
Description of format of XML file (which can be parsed by XMLFileSystem) ================================================================== Allowed Elements: filesystem,file,folder,attr Mandatory attributes: -for filesystem version=... (e.g. "1.0") -for file,folder,attr name=.... (e.g.: <folder name="Config">) -for attr is mandatory one of bytevalue,shortvalue,intvalue,longvalue,floatvalue,doublevalue,boolvalue,charvalue,stringvalue,methodvalue,serialvalue,urlvalue Allowed atributes: -for file: url=.... (e.g.: <file name="sample.xml" url="file:/c:/sample.xml">) -for folder,filesystem nothing allowed Note: file can contain content e.g.: < file name="sample.java"> < ![CDATA[ package org.sample; import java.io; ]]> < /file> But using url="..." is preferred. This class implements virtual FileSystem. It is special case of FileSystem in XML format. Description of this format best ilustrate DTD file that is showed in next lines: < !ELEMENT filesystem (file | folder)*> < !ATTLIST filesystem version CDATA #REQUIRED> //version not checkked yet < !ELEMENT folder (file |folder | attr)*> < !ATTLIST folder name CDATA #REQUIRED> //name of folder < !ELEMENT file (#PCDATA | attr)*> < !ATTLIST file name CDATA #REQUIRED> //name of file < !ATTLIST file url CDATA #IMPLIED> //content of the file can be find at url < !ELEMENT attr EMPTY> < !ATTLIST attr name CDATA #REQUIRED> //name of attribute < !ATTLIST attr bytevalue CDATA #IMPLIED>//the rest - types of attributes < !ATTLIST attr shortvalue CDATA #IMPLIED> < !ATTLIST attr intvalue CDATA #IMPLIED> < !ATTLIST attribute longvalue CDATA #IMPLIED> < !ATTLIST attr floatvalue CDATA #IMPLIED> < !ATTLIST attr doublevalue CDATA #IMPLIED> < !ATTLIST attr boolvalue CDATA #IMPLIED> < !ATTLIST attr charvalue CDATA #IMPLIED> < !ATTLIST attr stringvalue CDATA #IMPLIED> < !ATTLIST attr methodvalue CDATA #IMPLIED> < !ATTLIST attr serialvalue CDATA #IMPLIED> < !ATTLIST attr urlvalue CDATA #IMPLIED>
The methodvalue attribute can be in form of pgk1.pkg2.ClassName.methodName
which should point to existing class with static method usually having no, one
or two arguments. This method does not need to be public or in public class, if
the filesystem has permissions to call the method. The method can take one
of the following signatures:
static Value methodName(); static Value methodName(FileObject fo); static Value methodName(FileObject fo, String attrName); static Value methodName(Mapwhereattrs); // since 7.0 static Value methodName(Map attrs, String attrName); // since 7.0
Value
can be any java type.
Nested Class Summary | |
---|---|
static class |
XMLFileSystem.Impl
Implementation of all interfaces List, Change, Info and Attr that delegates to XMLFileSystem |
Nested classes/interfaces inherited from class org.openide.filesystems.AbstractFileSystem |
---|
AbstractFileSystem.Attr, AbstractFileSystem.Change, AbstractFileSystem.Info, AbstractFileSystem.List, AbstractFileSystem.Transfer |
Nested classes/interfaces inherited from class org.openide.filesystems.FileSystem |
---|
FileSystem.AtomicAction, FileSystem.Environment, FileSystem.HtmlStatus, FileSystem.Status |
Field Summary |
---|
Fields inherited from class org.openide.filesystems.AbstractFileSystem |
---|
attr, change, info, list, transfer |
Fields inherited from class org.openide.filesystems.FileSystem |
---|
PROP_DISPLAY_NAME, PROP_HIDDEN, PROP_READ_ONLY, PROP_ROOT, PROP_SYSTEM_NAME, PROP_VALID |
Constructor Summary | |
---|---|
XMLFileSystem()
Constructor. |
|
XMLFileSystem(FileSystemCapability cap)
Deprecated. Useless. |
|
XMLFileSystem(String uri)
Constructor. |
|
XMLFileSystem(URL url)
Constructor. |
Method Summary | ||
---|---|---|
void |
addNotify()
Notifies this filesystem that it has been added to the repository. |
|
protected
|
createReference(T fo)
Creates Reference. |
|
String |
getDisplayName()
Provides a name for the system that can be presented to the user. |
|
URL |
getXmlUrl()
Getter of url field. |
|
URL[] |
getXmlUrls()
Deprecated. experimental method. Nobody should rely on this method yet. |
|
boolean |
isReadOnly()
Test if the filesystem is read-only or not. |
|
void |
removeNotify()
Notifies this filesystem that it has been removed from the repository. |
|
void |
setXmlUrl(URL url)
Setter of url field. |
|
void |
setXmlUrl(URL url,
boolean validate)
Setter of url field. |
|
void |
setXmlUrls(URL[] urls)
Setter of url fields. |
Methods inherited from class org.openide.filesystems.AbstractFileSystem |
---|
canRead, canWrite, checkVirtual, existingFileObjects, find, findReference, findResource, getActions, getRefreshTime, getRoot, markImportant, refresh, refreshResource, refreshRoot, setRefreshTime |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public XMLFileSystem()
public XMLFileSystem(String uri) throws SAXException
uri
- to file with definition of XMLFileSystem
SAXException
- if parsing is not succesfulpublic XMLFileSystem(URL url) throws SAXException
url
- to definition of XMLFileSystem
SAXException
- if parsing not succesful@Deprecated public XMLFileSystem(FileSystemCapability cap)
cap
- capabilities for this filesystemMethod Detail |
---|
public URL getXmlUrl()
public void setXmlUrl(URL url) throws IOException, PropertyVetoException
url
- with definition of XMLFileSystem
PropertyVetoException
- if the change is not allowed by a listener
IOException
- if the file is not validpublic void setXmlUrl(URL url, boolean validate) throws IOException, PropertyVetoException
url
- with definition of XMLFileSystemvalidate
- sets validating of SAXParser
PropertyVetoException
- if the change is not allowed by a listener
IOException
- if the file is not valid@Deprecated public URL[] getXmlUrls()
public void setXmlUrls(URL[] urls) throws IOException, PropertyVetoException
urls
- array of definitions (in xml form) of XMLFileSystem
IOException
- if the file is not valid
PropertyVetoException
- if the change is not allowed by a listenerpublic String getDisplayName()
getDisplayName
in class AbstractFileSystem
public boolean isReadOnly()
isReadOnly
in class FileSystem
public void addNotify()
addNotify
in class FileSystem
public void removeNotify()
removeNotify
in class FileSystem
protected <T extends FileObject> Reference<T> createReference(T fo)
AbstractFileSystem
createReference
in class AbstractFileSystem
fo
- is FileObject. It`s reference yourequire to get.
|
org.openide.filesystems 7.1 | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |