Class Resource

  • Direct Known Subclasses:
    ContentResource, Template

    public abstract class Resource
    extends java.lang.Object
    This class represent a general text resource that may have been retrieved from any number of possible sources.
    Version:
    $Id: Resource.java 729843 2008-12-29 09:06:57Z byron $
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected java.lang.Object data
      Resource might require ancillary storage of some kind
      protected java.lang.String encoding
      Character encoding of this resource
      protected long lastModified
      The file modification time (in milliseconds) for the cached template.
      protected static long MILLIS_PER_SECOND
      The number of milliseconds in a minute, used to calculate the check interval.
      protected long modificationCheckInterval
      How often the file modification time is checked (in seconds).
      protected java.lang.String name
      Name of the resource
      protected long nextCheck
      The next time the file modification time will be checked (in milliseconds).
      protected ResourceLoader resourceLoader
      The template loader that initially loaded the input stream for this template, and knows how to check the source of the input stream for modification.
      protected RuntimeServices rsvc  
      protected int type
      Resource type (RESOURCE_TEMPLATE or RESOURCE_CONTENT)
    • Constructor Summary

      Constructors 
      Constructor Description
      Resource()
      Default constructor
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Object getData()
      Get arbitrary data object that might be used by the resource.
      java.lang.String getEncoding()
      get the encoding of this resource for example, "ISO-8859-1"
      long getLastModified()
      Return the lastModifed time of this resource.
      java.lang.String getName()
      Get the name of this template.
      ResourceLoader getResourceLoader()
      Return the template loader that pulled in the template stream
      int getType()  
      boolean isSourceModified()  
      abstract boolean process()
      Perform any subsequent processing that might need to be done by a resource.
      boolean requiresChecking()
      Is it time to check to see if the resource source has been updated?
      void setData​(java.lang.Object data)
      Set arbitrary data object that might be used by the resource.
      void setEncoding​(java.lang.String encoding)
      set the encoding of this resource for example, "ISO-8859-1"
      void setLastModified​(long lastModified)
      Set the last modified time for this resource.
      void setModificationCheckInterval​(long modificationCheckInterval)
      Set the modification check interval.
      void setName​(java.lang.String name)
      Set the name of this resource, for example test.vm.
      void setResourceLoader​(ResourceLoader resourceLoader)
      Set the template loader for this template.
      void setRuntimeServices​(RuntimeServices rs)  
      void setType​(int type)
      Sets the type of this Resource (RESOURCE_TEMPLATE or RESOURCE_CONTENT)
      void touch()
      'Touch' this template and thereby resetting the nextCheck field.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • resourceLoader

        protected ResourceLoader resourceLoader
        The template loader that initially loaded the input stream for this template, and knows how to check the source of the input stream for modification.
      • MILLIS_PER_SECOND

        protected static final long MILLIS_PER_SECOND
        The number of milliseconds in a minute, used to calculate the check interval.
        See Also:
        Constant Field Values
      • modificationCheckInterval

        protected long modificationCheckInterval
        How often the file modification time is checked (in seconds).
      • lastModified

        protected long lastModified
        The file modification time (in milliseconds) for the cached template.
      • nextCheck

        protected long nextCheck
        The next time the file modification time will be checked (in milliseconds).
      • name

        protected java.lang.String name
        Name of the resource
      • encoding

        protected java.lang.String encoding
        Character encoding of this resource
      • data

        protected java.lang.Object data
        Resource might require ancillary storage of some kind
      • type

        protected int type
        Resource type (RESOURCE_TEMPLATE or RESOURCE_CONTENT)
    • Constructor Detail

      • Resource

        public Resource()
        Default constructor
    • Method Detail

      • setRuntimeServices

        public void setRuntimeServices​(RuntimeServices rs)
        Parameters:
        rs -
      • isSourceModified

        public boolean isSourceModified()
        Returns:
        True if source has been modified.
      • setModificationCheckInterval

        public void setModificationCheckInterval​(long modificationCheckInterval)
        Set the modification check interval.
        Parameters:
        modificationCheckInterval - The interval (in seconds).
      • requiresChecking

        public boolean requiresChecking()
        Is it time to check to see if the resource source has been updated?
        Returns:
        True if resource must be checked.
      • touch

        public void touch()
        'Touch' this template and thereby resetting the nextCheck field.
      • setName

        public void setName​(java.lang.String name)
        Set the name of this resource, for example test.vm.
        Parameters:
        name -
      • getName

        public java.lang.String getName()
        Get the name of this template.
        Returns:
        The name of this template.
      • setEncoding

        public void setEncoding​(java.lang.String encoding)
        set the encoding of this resource for example, "ISO-8859-1"
        Parameters:
        encoding -
      • getEncoding

        public java.lang.String getEncoding()
        get the encoding of this resource for example, "ISO-8859-1"
        Returns:
        The encoding of this resource.
      • getLastModified

        public long getLastModified()
        Return the lastModifed time of this resource.
        Returns:
        The lastModifed time of this resource.
      • setLastModified

        public void setLastModified​(long lastModified)
        Set the last modified time for this resource.
        Parameters:
        lastModified -
      • getResourceLoader

        public ResourceLoader getResourceLoader()
        Return the template loader that pulled in the template stream
        Returns:
        The resource loader for this resource.
      • setResourceLoader

        public void setResourceLoader​(ResourceLoader resourceLoader)
        Set the template loader for this template. Set when the Runtime determines where this template came from the list of possible sources.
        Parameters:
        resourceLoader -
      • setData

        public void setData​(java.lang.Object data)
        Set arbitrary data object that might be used by the resource.
        Parameters:
        data -
      • getData

        public java.lang.Object getData()
        Get arbitrary data object that might be used by the resource.
        Returns:
        The data object for this resource.
      • setType

        public void setType​(int type)
        Sets the type of this Resource (RESOURCE_TEMPLATE or RESOURCE_CONTENT)
        Since:
        1.6
      • getType

        public int getType()
        Returns:
        type code of the Resource
        Since:
        1.6