org.apache.commons.vfs.provider
Class LayeredFileNameParser

java.lang.Object
  extended by org.apache.commons.vfs.provider.AbstractFileNameParser
      extended by org.apache.commons.vfs.provider.LayeredFileNameParser
All Implemented Interfaces:
FileNameParser

public class LayeredFileNameParser
extends AbstractFileNameParser

Implementation for layered filesystems.

Additionally encodes the '!' character.


Field Summary
private static LayeredFileNameParser INSTANCE
           
 
Constructor Summary
LayeredFileNameParser()
           
 
Method Summary
 boolean encodeCharacter(char ch)
          Check if a character needs encoding (%nn)
protected  java.lang.String extractRootName(java.lang.StringBuffer uri)
          Pops the root prefix off a URI, which has had the scheme removed.
static LayeredFileNameParser getInstance()
           
 FileName parseUri(VfsComponentContext context, FileName base, java.lang.String filename)
          parses a String into a filename
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

INSTANCE

private static final LayeredFileNameParser INSTANCE
Constructor Detail

LayeredFileNameParser

public LayeredFileNameParser()
Method Detail

getInstance

public static LayeredFileNameParser getInstance()

encodeCharacter

public boolean encodeCharacter(char ch)
Description copied from interface: FileNameParser
Check if a character needs encoding (%nn)

Specified by:
encodeCharacter in interface FileNameParser
Overrides:
encodeCharacter in class AbstractFileNameParser
Parameters:
ch - the character
Returns:
true if character should be encoded

parseUri

public FileName parseUri(VfsComponentContext context,
                         FileName base,
                         java.lang.String filename)
                  throws FileSystemException
Description copied from interface: FileNameParser
parses a String into a filename

Throws:
FileSystemException

extractRootName

protected java.lang.String extractRootName(java.lang.StringBuffer uri)
                                    throws FileSystemException
Pops the root prefix off a URI, which has had the scheme removed.

Throws:
FileSystemException