The following features are supported:
When generating HTML/JSON/Text output for a Resource, additional tags are generated listing the version of DDMSence used to create the record (to help identify formatting bugs), and the version of DDMS. These lines are not required (and may be removed). For example:
ddms.generator: DDMSence 1.0.0
ddms.version: 3.0
<meta name="ddms.generator" content="DDMSence 1.0.0" />
<meta name="ddms.version" content="3.0" />
Starting in DDMS 3.0, resources have additional ISM attributes which did not exist in 2.0. However, the 2.0 schema still allows "any" attributes on the Resource, so the 3.0 attribute values will be loaded if present.
Starting in DDMS 3.0, the ISM attributes explicitly defined in the schema should appear in the SecurityAttributes, not the ExtensibleAttributes. Attempts to load them as ExtensibleAttributes will throw an InvalidDDMSException. In DDMS 2.0, there are no ISM attributes explicitly defined in the schema, so you can load them in any way you want. It is recommended that you load them as SecurityAttributes anyhow, for consistency with newer DDMS resources. Please see the "Power Tips" on the Extensible Layer (on the DDMSence home page) for details.
The names of this component was made lowercase in DDMS 4.0.1.
{@table.footer}{@table.header Nested Elements}{@child.info ddms:metacardInfo|1|00011}{@child.info ddms:identifier|1..*|11111}{@child.info ddms:title|1..*|11111}{@child.info ddms:subtitle|0..*|11111}{@child.info ddms:description|0..1|11111}{@child.info ddms:language|0..*|11111}{@child.info ddms:dates|0..1|11111}{@child.info ddms:rights|0..1|11111}{@child.info ddms:source|0..*|11111}{@child.info ddms:type|0..*|11111}{@child.info ddms:contributor|0..*|11111}{@child.info ddms:creator|0..*|11111}{@child.info ddms:pointOfContact|0..*|11111}{@child.info ddms:publisher|0..*|11111}{@child.info ddms:format|0..1|11111}{@child.info ddms:subjectCoverage|0..1|11100}{@child.info ddms:subjectCoverage|1..*|00011}{@child.info ddms:virtualCoverage|0..*|11111}{@child.info ddms:temporalCoverage|0..*|11111}{@child.info ddms:geospatialCoverage|0..*|11111}{@child.info ddms:relatedResource|0..*|11111}{@child.info ddms:resourceManagement|0..1|00011}{@child.info ddms:security|1|11110}{@child.info any:<extensibleElements>|0..1|10000}{@child.info any:<extensibleElements>|0..*|01110}{@table.footer}{@table.header Attributes}{@child.info ism:resourceElement|1|01110}{@child.info ism:createDate|1|01110}{@child.info ism:DESVersion|1|01110}{@child.info ntk:DESVersion|1|00010}{@child.info ism:compliesWith|0..*|00110}{@child.info ddms:compliesWith|0..*|00001}{@child.info ism:classification|1|01110}{@child.info ism:ownerProducer|1..*|01110}{@child.info ism:<securityAttributes>|0..*|01110}{@child.info ism:<noticeAttributes>|0..*|00010} {@child.info any:<extensibleAttributes>|0..*|11110}{@table.footer}{@table.header Validation Rules}{@ddms.rule The qualified name of the element is correct.|Error|11111}{@ddms.rule The cardinality all child components is enforced.|Error|11111}{@ddms.rule At least 1 of creator, publisher, contributor, or pointOfContact must exist.|Error|11111}{@ddms.rule All ddms:order attributes make a complete, consecutive set, starting at 1.|Error|11111}{@ddms.rule ism:resourceElement must exist.|Error|01110}{@ddms.rule ism:createDate must exist and adheres to a valid date format.|Error|01110}{@ddms.rule ism:DESVersion must exist and is a valid Integer.|Error|01111}{@ddms.rule ism:classification must exist.|Error|01110}{@ddms.rule ism:ownerProducer must exist.|Error|01110}{@ddms.rule ntk:DESVersion must exist and be a valid Integer.|Error|00010}{@ddms.rule ism:compliesWith must not be used before the DDMS version in which it was introduced.|Error|11111}{@ddms.rule ism:compliesWith must not be used after the DDMS version in which it was removed.|Error|11111}{@ddms.rule If set, ism:compliesWith must contain valid tokens.|Error|11110}{@ddms.rule The resource must not have ISM or NTK attributes.|Error|00001}{@ddms.rule The resource must not have extensible elements or attributes.|Error|00001} {@ddms.rule Warnings from any notice attributes are claimed by this component.|Warning|11111}{@ddms.rule ism:externalNotice may cause issues for DDMS 4.0.1 systems.|Warning|00010}{@table.footer} @author Brian Uri! @since 0.9.bResource
represents a file or a directory in a web application.
When a request arrives at the server, the {@link ServerMessageDeliverer}searches in the resource tree for the destination resource. It travels down the resource tree by looking for one element of the destination URI after another and by calling the method {@link #getChild(String)} on each element.It is allowed to override this method and to return an arbitrary resource. This allows for instance to serve URIs with wildcards or delegate requests to any sub-URI to the same resource.
A resource can have its own {@link Executor}. If a resource has such an executor, all requests will be handled by it. Otherwise, the request will be executed on the executor of the parent or transitively the first ancestor that defines its own executor. If no resource up to the root defines its own executor, the currently executing thread will handle the request. A class that implements this interface can export further methods to allow the execution of code on the resource's executor. See {@link ResourceBase} for anexample.
һ����Դ���Ա���ʾ��URL
��File
����InputStream
�� ��Ҫע����ǣ������������͵���Դ������ͬʱȡ������������ʽ��
The standard way of specifying an AWS resource is with an Amazon Resource Name (ARN).
The resource is C in the statement "A has permission to do B to C where D applies."
User: Zhang Kaitao
Date: 14-1-28
Version: 1.0
User: Zhang Kaitao
Date: 14-1-28
Version: 1.0
User: Zhang Kaitao
Date: 14-1-28
Version: 1.0
User: Zhang Kaitao
Date: 14-1-28
Version: 1.0
User: Zhang Kaitao
Date: 14-1-28
Version: 1.0
User: Zhang Kaitao
Date: 14-1-28
Version: 1.0
User: Zhang Kaitao
Date: 14-1-28
Version: 1.0
getProperty()
and addProperty()
which will access or modify that model. This enables the programmer to write code in a compact and easy style. Resources created by ResourceFactory will not refer to any model, and will not permit operations which require a model. Such resources are useful as general constants.
This interface provides methods supporting typed literals. This means that methods are provided which will translate a built in type, or an object to an RDF Literal. This translation is done by invoking the toString()
method of the object, or its built in equivalent. The reverse translation is also supported. This is built in for built in types. Factory objects, provided by the application, are used for application objects.
This interface provides methods for supporting enhanced resources. An enhanced resource is a resource to which the application has added behaviour. RDF containers are examples of enhanced resources built in to this package. Enhanced resources are supported by encapsulating a resource created by an implementation in another class which adds the extra behaviour. Factory objects are used to construct such enhanced resources.
User: Zhang Kaitao
Date: 13-2-4 上午9:38
Version: 1.0
This class holds information that describes a Resource. It provides access to a {@link ResourceFactory} for obtaining theactual Resource object described by this descriptor. See the layout.dtd file for more information on how to define a Resource via XML. The LayoutDefinition will add all defined Resources to the request scope for easy access (including via JSF EL).
@author Ken Paulsen (ken.paulsen@sun.com)Resource
provided to the client terminal. Support for actually displaying the resource type is left to the terminal.
@author Vaadin Ltd.
@since 3.0
Resource
provided to the client terminal. Support for actually displaying the resource type is left to the terminal.
@author IT Mill Ltd.
@version 6.7.1
@since 3.0
ResourceProvider
, which acts as a factory for resources.
@author dluebke
@version 1.0.6 (2003-10-23)
@since 1.0
Engine engine = Engine.getEngine(); Resource resource = engine.getResource("/foo.txt");@see httl.Engine#getResource(String) @see httl.Engine#getResource(String,String) @see httl.spi.Loader#load(String,Locale,String) @see httl.spi.Translator#translate(Resource,Node,java.util.Map) @author Liang Fei (liangfei0201 AT gmail DOT com)
This is used in {@link Queue} to support basic mutual exclusion/locks. If two{@link Queue.Task}s require the same {@link Resource}, they will not be run at the same time.
Resources are compared by using their {@link #displayName names}, and need not have the "same object" semantics. @since 1.121
Resource
models a set of computer resources in the cluster.
Currrently it only models memory.
Typically, applications request Resource
of suitable capability to run their component tasks.
Resources may be either base or localized. A localized version of a base resource may be obtained via {@link #getLocalization(Locale)}.
Resource locations are used as Map keys, they must implement {@link java.lang.Object#hashCode()} and{@link java.lang.Object#equals(java.lang.Object)}properly.
Resource locations are valid even if the corresponding resource doesn't exist. To verify if a localization actually exists, use {@link #getResourceURL()}, which returns null if the resource doesn't exist. {@link #getLocalization(Locale)}returns only real resource locations, where the resource exists.
Folders must be represented with a trailing slash. @author Howard Lewis Ship
false
, 0
, ""
). In other words, the specified interface methods should not throw RuntimeExceptions.false
, 0
, ""
). The Resource
is also an {@link Adaptable} to get adapters toother types. A JCR based resource might support adapting to the JCR Node on which the resource is based.
All implementations must support returning a value map from {@link #getValueMap()}, even if the map is empty.
Implementor's Note: It is recommended to not implement this interface directly. Rather consider either extending from {@link AbstractResource} or{@link ResourceWrapper}. This will make sure your implementation will not be suffering from missing method problems should the Sling Resource API be extended in the future.
Resource
is the general term for all UIMA components that can be acquired and used by an application (or by other resources). Resource
s may be co-located with their client or distributed as services. This is made transparent to the client.
A {@link ResourceSpecifier} contains information that can be used acquire a reference to aResource
, whether that is done by instantiating the resource locally or locating an existing resource available as a service.
The {@link org.apache.uima.ResourceFactory} takes a ResourceSpecifier
and returnsan instance of the specified Resource
. Again, this can be done by creating the instance or by locating an existing instance.
Most applications will not need to deal with this abstract Resource
interface. UIMA Developers who need to introduce new types of Resources, however, will need to implement this interface.
Resources themselves do not currently have URLs. Instead, they are referred to by components that have URLs.
Resources can be shared throughout an application by adding them to Application with addResource(Class scope, String name) or addResource(String name). A resource added in such a way is a named resource and is accessible throughout the application via Application.getResource(Class scope, String name) or Application.getResource(String name). The ResourceReference class enables easy access to such resources in a way that is light on clusters.
While resources can be shared between components, it is important to emphasize that components cannot be shared among containers. For example, you can create a button image resource with new DefaultButtonImageResource(...) and store that in the Application with addResource(). You can then assign that logical resource via ResourceReference to several ImageButton components. While the button image resource can be shared between components like this, the ImageButton components in this example are like all other components in Wicket and cannot be shared. @author Jonathan Locke @author Johan Compagner @author Gili Tzabari @author Igor Vaynberg
Resources are entities for which a user or a group is authorized. Examples of resources are applications, process-definitions, process-instances, tasks ...
A resource has a type and an id. The type ( {@link #setResource(String)}) allows to group all resources of the same kind. A resource id is the identifier of an individual resource instance ( {@link #setResourceId(String)}). For example: the resource type could be "processDefinition" and the resource-id could be the id of an individual process definition.
See {@link Resources} for a set of built-in resource constants.
@author Daniel Meyer @see ResourcesThere also exists a {@link org.codehaus.janino.util.resource.ResourceCreator} concept whichopens a resource for writing, but that happens directly and not through an intermediate {@link Resource} object. @see org.codehaus.janino.util.resource.ResourceFinder @see org.codehaus.janino.util.resource.ResourceCreator
Generic interface to provide a Reader or InputStream for the underlying IO resource.
The following features are supported:
A resource of an appropriate type is {@link Factory#createResource created} by a resource factory;a resource set indirectly {@link ResourceSet#createResource(URI) creates} a resource using such a factory.A resource is typically {@link #getResourceSet contained} by a resource set,along with related resources. It has a {@link #getURI URI} representing it's identityand that URI is {@link org.eclipse.emf.ecore.resource.URIConverter used}to determine where to {@link #save(Map) save} and {@link #load(Map) load}. It provides modeled {@link #getContents contents}, in fact, it provides even the {@link #getAllContents tree} of modeled contents,as well as {@link Diagnostic diagnostics} for {@link #getErrors errors} and {@link #getWarnings other} problems.It may be {@link #unload unloaded} to discard the contents and the load state can be {@link #isLoaded queried}. {@link #isModified Modification} can be {@link #isTrackingModification tracked}, but it's expensive. The resource will be informed as objects are {@link Resource.Internal#attached attached} and {@link Resource.Internal#detached detached}; if needed, it will be able to maintain a map to support {@link #getEObject getEObject}. Structured URI {@link #getURIFragment fragments} are used rather than IDs, since they are a more general alternative.Clients must extend the default {@link org.eclipse.emf.ecore.resource.impl.ResourceImpl implementation}, or one of its derived classes, since methods can and will be added to this API.
A resource produces notification for changes to the value of each of these features:
This class provides a resource abstraction, where a resource may be a file, a URL or an entry in a jar file.
A Resource defines a local name for the content being retrieved and the url from where the content will be retrieved. The name must not start with '/' but can represent a complex path like "parent/dir/file".
Additionaly you can add rules to the resource. This rules are to be applyed by the {@link org.fenixedu.academic.ui.struts.action.teacher.siteArchive.Fetcher} to the content of the resource. @author cfgi
Request | Response | Method invoked |
---|---|---|
{@code "GET /hello"} | {@code "Hello!"} | {@code HelloResource.sayHello()} |
{@code "GET /hello2"} | {@code "Hello!"} | {@code HelloResource.sayHello()} |
{@code "GET /hello2/world"} | {@code "Hello World!"} | {@code Inflector.apply()} |
Implementations are not required to be thread-safe.
Implementations are not required to be thread-safe.
This type will be merged with {@link ExternalResource} and friends.
An InputStream can be opened for every resource if it exists in physical form, but a URL or File handle can just be returned for certain resources. The actual behavior is implementation-specific. @author Juergen Hoeller @since 28.12.2003 @see #getURL() @see #getURI() @see #getFile()
Instances of this class are not thread-safe and need to be synchronized externally. @author Emanuel Muckenhuber
public boolean equals(Object other); public int hashCode();@author voelkel
Instances of this type must be effectively immutable. That is, for a given instance of this interface, the methods defined by this interface must always return the same result. @ThreadSafe @author $Id: c7b6462fb53b38ac3071d7ba73af9dad2af6b9ce $
Resource
provides an abstraction of any given object that can be retrieved using a HTTP request. The reason for having this abstraction is to simplify the interface with any given Resource
. This is similar in design to a Container
, however this is intended to handle a single resource. At any time a container may manage many resources all of which are resolved using a ResourceEngine
implementation. So in essence this is used to identify a component that can handle a HTTP request routed by a resource engine.
@author Niall Gallagher
An InputStream can be opened for every resource if it exists in physical form, but a URL or File handle can just be returned for certain resources. The actual behavior is implementation-specific. @author Juergen Hoeller @since 28.12.2003 @see #getInputStream() @see #getURL() @see #getURI() @see #getFile() @see FileSystemResource @see ClassPathResource @see UrlResource @see ByteArrayResource @see InputStreamResource @see org.springframework.web.context.support.ServletContextResource
Structured after the model used by Maven. @author Alan Stewart @since 1.1
Marks a valid resource interface. Resource interface is an interface, that has get* and set* methods, according the default convention for JavaBeans. Each property must have both getter and setter. Also each property's must be either primitive value (except for long
) or a valid resource.
These resource objects do not define how they are accessed. See the sub-classes for specific accesses.
Resource
is a container for data stored within the database. Raw resources are not particulary useful. It is necessary to have a resource implementation that provides handling for a specific content type before anything useful can be done.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|