com.guiseframework.converter
Class AbstractURIStringLiteralConverter

java.lang.Object
  extended by com.globalmentor.beans.BoundPropertyObject
      extended by com.guiseframework.event.GuiseBoundPropertyObject
          extended by com.guiseframework.converter.AbstractConverter<V,java.lang.String>
              extended by com.guiseframework.converter.AbstractStringLiteralConverter<java.net.URI>
                  extended by com.guiseframework.converter.AbstractURIStringLiteralConverter
All Implemented Interfaces:
com.globalmentor.beans.PropertyBindable, com.globalmentor.beans.PropertyConstrainable, Converter<java.net.URI,java.lang.String>
Direct Known Subclasses:
BaseURIStringLiteralConverter, DefaultURIStringLiteralConverter, PathURIStringLiteralConverter

public abstract class AbstractURIStringLiteralConverter
extends AbstractStringLiteralConverter<java.net.URI>

An abstract converter that converts a URI from and to a string literal, correctly resolving relative URIs. If a base URI is provided, any URI will be resolved to the given base URI. Otherwise, relative URIs are accepted as-is. For example, if relative URIs should be interpreted as path URIs, a base URI of path: should be used.

Author:
Garret Wilson
See Also:
URI

Field Summary
 
Fields inherited from class com.globalmentor.beans.BoundPropertyObject
NO_PROPERTY_CHANGE_LISTENERS, NO_VETOABLE_CHANGE_LISTENERS
 
Fields inherited from interface com.guiseframework.converter.Converter
INVALID_VALUE_MESSAGE_PROPERTY
 
Constructor Summary
AbstractURIStringLiteralConverter()
           
 
Method Summary
 java.net.URI convertLiteral(java.lang.String literal)
          Converts a literal representation of a value from the lexical space into a value in the value space.
protected abstract  java.net.URI resolveURI(java.net.URI uri)
          Resolves a converted URI if needed.
 
Methods inherited from class com.guiseframework.converter.AbstractStringLiteralConverter
convertValue, getInstance
 
Methods inherited from class com.guiseframework.converter.AbstractConverter
getInvalidValueMessage, isEquivalent, isValidLiteral, setInvalidValueMessage
 
Methods inherited from class com.guiseframework.event.GuiseBoundPropertyObject
getSession
 
Methods inherited from class com.globalmentor.beans.BoundPropertyObject
addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, addVetoableChangeListener, createPostponedPropertyChangeEvent, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, fireVetoableChange, getForwardPropertyChangeListener, getPropertyChangeListeners, getPropertyChangeListeners, getPropertyChangeSupport, getRepeatPropertyChangeListener, getRepeatVetoableChangeListener, getVetoableChangeListeners, getVetoableChangeListeners, getVetoableChangeSupport, hasPropertyChangeListeners, hasVetoableChangeListeners, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, removeVetoableChangeListener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.guiseframework.converter.Converter
getSession
 
Methods inherited from interface com.globalmentor.beans.PropertyBindable
addPropertyChangeListener, addPropertyChangeListener, getPropertyChangeListeners, getPropertyChangeListeners, hasPropertyChangeListeners, removePropertyChangeListener, removePropertyChangeListener
 

Constructor Detail

AbstractURIStringLiteralConverter

public AbstractURIStringLiteralConverter()
Method Detail

resolveURI

protected abstract java.net.URI resolveURI(java.net.URI uri)
Resolves a converted URI if needed. If the URI is already absolute, no action occurs.

Parameters:
uri - The URI to resolve.
Returns:
The URI resolved as needed and as appropriate.

convertLiteral

public java.net.URI convertLiteral(java.lang.String literal)
                            throws ConversionException
Converts a literal representation of a value from the lexical space into a value in the value space. This version resolves any URI using resolveURI(URI).

Parameters:
literal - The literal value in the lexical space to convert.
Returns:
The converted value in the value space, or null if the given literal is null.
Throws:
ConversionException - if the literal value cannot be converted.
See Also:
resolveURI(URI)


Copyright © 2005-2010 GlobalMentor, Inc. All Rights Reserved.