Class XMPMetadataResource
java.lang.Object
org.apache.tika.server.core.resource.MetadataResource
org.apache.tika.server.standard.resource.XMPMetadataResource
- All Implemented Interfaces:
TikaResourceAware,TikaServerResource
XMP is content negotiation on
/meta, not a path of its own: this class inherits
@Path("/meta") from MetadataResource and differs only in producing
application/rdf+xml. CXF picks between the two by the request's Accept header.-
Constructor Summary
ConstructorsConstructorDescriptionRequired by the service loader, which cannot supply the TikaResource.XMPMetadataResource(TikaResource tikaResource) -
Method Summary
Modifier and TypeMethodDescriptionjakarta.ws.rs.core.ResponsegetMetadata(InputStream is, jakarta.ws.rs.core.HttpHeaders httpHeaders, jakarta.ws.rs.core.UriInfo info) jakarta.ws.rs.core.ResponsegetMetadataField(InputStream is, jakarta.ws.rs.core.HttpHeaders httpHeaders, jakarta.ws.rs.core.UriInfo info, String field) Get a specific metadata field.jakarta.ws.rs.core.ResponsegetMetadataFromMultipart(org.apache.cxf.jaxrs.ext.multipart.Attachment att, jakarta.ws.rs.core.UriInfo info) voidsetTikaResource(TikaResource tikaResource) Methods inherited from class org.apache.tika.server.core.resource.MetadataResource
getMetadataWithConfig, getTikaResource, parseMetadata
-
Constructor Details
-
XMPMetadataResource
-
XMPMetadataResource
public XMPMetadataResource()Required by the service loader, which cannot supply the TikaResource.
-
-
Method Details
-
setTikaResource
- Specified by:
setTikaResourcein interfaceTikaResourceAware- Overrides:
setTikaResourcein classMetadataResource
-
getMetadataField
@PUT @Path("{field}") @Produces("application/rdf+xml") public jakarta.ws.rs.core.Response getMetadataField(InputStream is, @Context jakarta.ws.rs.core.HttpHeaders httpHeaders, @Context jakarta.ws.rs.core.UriInfo info, @PathParam("field") String field) throws Exception Description copied from class:MetadataResourceGet a specific metadata field. If the document parses successfully but the specific metadata field was not found, ais returned. Unlike the other /meta endpoints, a bare field value has no envelope to embed a container-level exception in, so that case is thrown (422) instead. Note that this method handles multivalue fields and returns possibly more metadata value than requested. If you want XMP, you must be careful to specify the exact XMP key. For example, "Author" will return nothing, but "dc:creator" will return the correct value.invalid reference
javax.ws.rs.core.Response.Status#NOT_FOUND- Overrides:
getMetadataFieldin classMetadataResource- Parameters:
is- inputstreamhttpHeaders- httpheadersinfo- infofield- the tika metadata field name- Returns:
- one of
or
invalid reference
javax.ws.rs.core.Response.Status#OKinvalid reference
javax.ws.rs.core.Response.Status#NOT_FOUND - Throws:
Exception
-
getMetadataFromMultipart
@POST @Consumes("multipart/form-data") @Produces("application/rdf+xml") @Path("form") public jakarta.ws.rs.core.Response getMetadataFromMultipart(org.apache.cxf.jaxrs.ext.multipart.Attachment att, @Context jakarta.ws.rs.core.UriInfo info) throws Exception - Overrides:
getMetadataFromMultipartin classMetadataResource- Throws:
Exception
-
getMetadata
@PUT @Produces("application/rdf+xml") public jakarta.ws.rs.core.Response getMetadata(InputStream is, @Context jakarta.ws.rs.core.HttpHeaders httpHeaders, @Context jakarta.ws.rs.core.UriInfo info) throws Exception - Overrides:
getMetadatain classMetadataResource- Throws:
Exception
-