Skip to content

Commit

Permalink
Rename fedora model objects to reflect usage, not legacy baggage
Browse files Browse the repository at this point in the history
  • Loading branch information
cbeer committed Oct 30, 2014
1 parent 3432611 commit 6883b68
Show file tree
Hide file tree
Showing 132 changed files with 628 additions and 596 deletions.
Expand Up @@ -25,8 +25,8 @@
import org.fcrepo.auth.common.FedoraAuthorizationDelegate;
import org.fcrepo.auth.common.ServletContainerAuthenticationProvider;
import org.fcrepo.kernel.exception.RepositoryRuntimeException;
import org.fcrepo.kernel.services.ObjectService;
import org.fcrepo.kernel.impl.services.ObjectServiceImpl;
import org.fcrepo.kernel.services.ContainerService;
import org.fcrepo.kernel.impl.services.ContainerServiceImpl;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
Expand Down Expand Up @@ -101,7 +101,7 @@ public void testPermissiveFAD() throws RepositoryException {
for (final Privilege p : rootPrivs) {
logger.debug("got priv: " + p.getName());
}
final ObjectService os = new ObjectServiceImpl();
final ContainerService os = new ContainerServiceImpl();
os.findOrCreate(session, "/myobject");
verify(fad, times(4)).hasPermission(any(Session.class), any(Path.class), any(String[].class));
}
Expand All @@ -122,7 +122,7 @@ public void testRestrictiveFAD() throws Throwable {

final ServletCredentials credentials = new ServletCredentials(request);
final Session session = repo.login(credentials);
final ObjectService os = new ObjectServiceImpl();
final ContainerService os = new ContainerServiceImpl();
try {
os.findOrCreate(session, "/myobject");
} catch (final RepositoryRuntimeException e) {
Expand Down
Expand Up @@ -18,7 +18,7 @@
import com.hp.hpl.jena.rdf.model.Resource;
import org.fcrepo.http.commons.AbstractResource;
import org.fcrepo.http.commons.api.rdf.HttpResourceConverter;
import org.fcrepo.kernel.FedoraResource;
import org.fcrepo.kernel.models.FedoraResource;
import org.fcrepo.kernel.identifiers.IdentifierConverter;
import org.modeshape.jcr.api.JcrTools;
import org.slf4j.Logger;
Expand Down
Expand Up @@ -19,8 +19,8 @@
import static org.fcrepo.jcr.FedoraJcrTypes.CONTENT_DIGEST;
import static org.fcrepo.jcr.FedoraJcrTypes.CONTENT_SIZE;
import static org.fcrepo.jcr.FedoraJcrTypes.FEDORA_BINARY;
import static org.fcrepo.jcr.FedoraJcrTypes.FEDORA_DATASTREAM;
import static org.fcrepo.jcr.FedoraJcrTypes.FEDORA_OBJECT;
import static org.fcrepo.jcr.FedoraJcrTypes.FEDORA_CONTAINER;
import static org.fcrepo.jcr.FedoraJcrTypes.FEDORA_NON_RDF_SOURCE_DESCRIPTION;
import static org.fcrepo.jcr.FedoraJcrTypes.FEDORA_RESOURCE;
import static org.fcrepo.jcr.FedoraJcrTypes.JCR_CREATED;
import static org.fcrepo.jcr.FedoraJcrTypes.JCR_LASTMODIFIED;
Expand Down Expand Up @@ -208,16 +208,16 @@ private String computeAndCacheSha1(final File file) {


private static void decorateObjectNode(final DocumentReader docReader, final DocumentWriter docWriter) {
if (!docReader.getMixinTypeNames().contains(FEDORA_OBJECT)) {
LOGGER.trace("Adding mixin: {}, to {}", FEDORA_OBJECT, docReader.getDocumentId());
docWriter.addMixinType(FEDORA_OBJECT);
if (!docReader.getMixinTypeNames().contains(FEDORA_CONTAINER)) {
LOGGER.trace("Adding mixin: {}, to {}", FEDORA_CONTAINER, docReader.getDocumentId());
docWriter.addMixinType(FEDORA_CONTAINER);
}
}

private static void decorateDatastreamNode(final DocumentReader docReader, final DocumentWriter docWriter) {
if (!docReader.getMixinTypeNames().contains(FEDORA_DATASTREAM)) {
LOGGER.trace("Adding mixin: {}, to {}", FEDORA_DATASTREAM, docReader.getDocumentId());
docWriter.addMixinType(FEDORA_DATASTREAM);
if (!docReader.getMixinTypeNames().contains(FEDORA_NON_RDF_SOURCE_DESCRIPTION)) {
LOGGER.trace("Adding mixin: {}, to {}", FEDORA_NON_RDF_SOURCE_DESCRIPTION, docReader.getDocumentId());
docWriter.addMixinType(FEDORA_NON_RDF_SOURCE_DESCRIPTION);
}
}

Expand Down
Expand Up @@ -23,8 +23,8 @@
import static com.google.common.collect.Lists.transform;
import static org.fcrepo.jcr.FedoraJcrTypes.CONTENT_SIZE;
import static org.fcrepo.jcr.FedoraJcrTypes.FEDORA_BINARY;
import static org.fcrepo.jcr.FedoraJcrTypes.FEDORA_DATASTREAM;
import static org.fcrepo.jcr.FedoraJcrTypes.FEDORA_OBJECT;
import static org.fcrepo.jcr.FedoraJcrTypes.FEDORA_NON_RDF_SOURCE_DESCRIPTION;
import static org.fcrepo.jcr.FedoraJcrTypes.FEDORA_CONTAINER;
import static org.fcrepo.kernel.RdfLexicon.HAS_MESSAGE_DIGEST;
import static org.fcrepo.kernel.utils.ContentDigest.asURI;
import static org.junit.Assert.assertEquals;
Expand Down Expand Up @@ -58,13 +58,13 @@
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.filefilter.TrueFileFilter;
import org.apache.commons.io.filefilter.WildcardFileFilter;
import org.fcrepo.kernel.Datastream;
import org.fcrepo.kernel.FedoraBinary;
import org.fcrepo.kernel.FedoraObject;
import org.fcrepo.kernel.models.NonRdfSourceDescription;
import org.fcrepo.kernel.models.FedoraBinary;
import org.fcrepo.kernel.models.Container;
import org.fcrepo.kernel.impl.rdf.impl.DefaultIdentifierTranslator;
import org.fcrepo.kernel.services.BinaryService;
import org.fcrepo.kernel.services.NodeService;
import org.fcrepo.kernel.services.ObjectService;
import org.fcrepo.kernel.services.ContainerService;
import org.fcrepo.kernel.services.functions.JcrPropertyFunctions;
import org.junit.AfterClass;
import org.junit.BeforeClass;
Expand Down Expand Up @@ -94,7 +94,7 @@ public abstract class AbstractFedoraFileSystemConnectorIT {
protected NodeService nodeService;

@Inject
protected ObjectService objectService;
protected ContainerService containerService;

@Inject
protected BinaryService binaryService;
Expand Down Expand Up @@ -195,15 +195,15 @@ protected static void cleanUpJsonFilesFiles(final File directory) {
public void testGetFederatedObject() throws RepositoryException {
final Session session = repo.login();

final FedoraObject object = objectService.findOrCreate(session, testDirPath());
final Container object = containerService.findOrCreate(session, testDirPath());
assertNotNull(object);

final Node node = object.getNode();
final NodeType[] mixins = node.getMixinNodeTypes();
assertEquals(2, mixins.length);

final boolean found = transform(asList(mixins), JcrPropertyFunctions.nodetype2name).contains(FEDORA_OBJECT);
assertTrue("Mixin not found: " + FEDORA_OBJECT, found);
final boolean found = transform(asList(mixins), JcrPropertyFunctions.nodetype2name).contains(FEDORA_CONTAINER);
assertTrue("Mixin not found: " + FEDORA_CONTAINER, found);

session.save();
session.logout();
Expand All @@ -213,15 +213,17 @@ public void testGetFederatedObject() throws RepositoryException {
public void testGetFederatedDatastream() throws RepositoryException {
final Session session = repo.login();

final Datastream datastream = binaryService.findOrCreate(session, testFilePath()).getDescription();
assertNotNull(datastream);
final NonRdfSourceDescription nonRdfSourceDescription
= binaryService.findOrCreate(session, testFilePath()).getDescription();
assertNotNull(nonRdfSourceDescription);

final Node node = datastream.getNode();
final Node node = nonRdfSourceDescription.getNode();
final NodeType[] mixins = node.getMixinNodeTypes();
assertEquals(2, mixins.length);

final boolean found = transform(asList(mixins), JcrPropertyFunctions.nodetype2name).contains(FEDORA_DATASTREAM);
assertTrue("Mixin not found: " + FEDORA_DATASTREAM, found);
final boolean found = transform(asList(mixins), JcrPropertyFunctions.nodetype2name)
.contains(FEDORA_NON_RDF_SOURCE_DESCRIPTION);
assertTrue("Mixin not found: " + FEDORA_NON_RDF_SOURCE_DESCRIPTION, found);

session.save();
session.logout();
Expand Down
Expand Up @@ -15,7 +15,7 @@
*/
package org.fcrepo.integration.connector.file;

import org.fcrepo.kernel.FedoraResource;
import org.fcrepo.kernel.models.FedoraResource;
import org.fcrepo.kernel.impl.rdf.impl.DefaultIdentifierTranslator;
import org.fcrepo.kernel.impl.rdf.impl.PropertiesRdfContext;
import org.fcrepo.kernel.utils.iterators.RdfStream;
Expand Down
Expand Up @@ -15,7 +15,7 @@
*/
package org.fcrepo.integration.connector.file;

import org.fcrepo.kernel.FedoraResource;
import org.fcrepo.kernel.models.FedoraResource;
import org.junit.Test;

import javax.jcr.Node;
Expand Down
Expand Up @@ -30,10 +30,11 @@
import org.fcrepo.http.commons.domain.Range;
import org.fcrepo.http.commons.domain.ldp.LdpPreferTag;
import org.fcrepo.http.commons.responses.RangeRequestInputStream;
import org.fcrepo.kernel.Datastream;
import org.fcrepo.kernel.FedoraBinary;
import org.fcrepo.kernel.FedoraObject;
import org.fcrepo.kernel.FedoraResource;
import org.fcrepo.kernel.models.NonRdfSource;
import org.fcrepo.kernel.models.NonRdfSourceDescription;
import org.fcrepo.kernel.models.FedoraBinary;
import org.fcrepo.kernel.models.Container;
import org.fcrepo.kernel.models.FedoraResource;
import org.fcrepo.kernel.exception.InvalidChecksumException;
import org.fcrepo.kernel.exception.MalformedRdfException;
import org.fcrepo.kernel.exception.RepositoryRuntimeException;
Expand Down Expand Up @@ -94,7 +95,6 @@
import static javax.ws.rs.core.Response.status;
import static org.apache.commons.lang.StringUtils.isBlank;
import static org.apache.jena.riot.RDFLanguages.contentTypeToLang;
import static org.fcrepo.jcr.FedoraJcrTypes.FEDORA_CONTAINER;
import static org.fcrepo.jcr.FedoraJcrTypes.LDP_BASIC_CONTAINER;
import static org.fcrepo.jcr.FedoraJcrTypes.LDP_DIRECT_CONTAINER;
import static org.fcrepo.jcr.FedoraJcrTypes.LDP_INDIRECT_CONTAINER;
Expand Down Expand Up @@ -236,10 +236,9 @@ public boolean apply(final Triple input) {
}

// Include binary properties if this is a binary description
if (resource() instanceof Datastream) {
final FedoraBinary binary = ((Datastream) resource()).getBinary();
rdfStream.concat(filter(binary.getTriples(translator(), ImmutableList.of(
TypeRdfContext.class,
if (resource() instanceof NonRdfSourceDescription) {
final FedoraResource described = ((NonRdfSourceDescription) resource()).getDescribedResource();
rdfStream.concat(filter(described.getTriples(translator(), ImmutableList.of(TypeRdfContext.class,
PropertiesRdfContext.class,
ContentRdfContext.class)), tripleFilter));
}
Expand Down Expand Up @@ -420,21 +419,21 @@ protected void addResourceHttpHeaders(final FedoraResource resource) {

servletResponse.addHeader("Link", "<" + LDP_NAMESPACE + "Resource>;rel=\"type\"");

if (resource instanceof Datastream) {
servletResponse.addHeader("Link", "<" + LDP_NAMESPACE + "RDFSource>;rel=\"type\"");
} else if (resource instanceof FedoraBinary) {
if (resource instanceof NonRdfSource) {
servletResponse.addHeader("Link", "<" + LDP_NAMESPACE + "NonRDFSource>;rel=\"type\"");
} else if (resource instanceof FedoraObject) {
} else if (resource instanceof Container) {
servletResponse.addHeader("Link", "<" + CONTAINER.getURI() + ">;rel=\"type\"");
if (resource.hasType(LDP_BASIC_CONTAINER)) {
servletResponse.addHeader("Link", "<" + BASIC_CONTAINER.getURI() + ">;rel=\"type\"");
} else if (resource.hasType(LDP_DIRECT_CONTAINER)) {
servletResponse.addHeader("Link", "<" + DIRECT_CONTAINER.getURI() + ">;rel=\"type\"");
} else if (resource.hasType(LDP_INDIRECT_CONTAINER)) {
servletResponse.addHeader("Link", "<" + INDIRECT_CONTAINER.getURI() + ">;rel=\"type\"");
} else if (!resource.hasType(FEDORA_CONTAINER)) {
} else {
servletResponse.addHeader("Link", "<" + BASIC_CONTAINER.getURI() + ">;rel=\"type\"");
}
} else {
servletResponse.addHeader("Link", "<" + LDP_NAMESPACE + "RDFSource>;rel=\"type\"");
}

}
Expand Down
Expand Up @@ -19,8 +19,8 @@
import com.hp.hpl.jena.rdf.model.Resource;
import org.fcrepo.http.commons.AbstractResource;
import org.fcrepo.http.commons.api.rdf.HttpResourceConverter;
import org.fcrepo.kernel.FedoraResource;
import org.fcrepo.kernel.Tombstone;
import org.fcrepo.kernel.models.FedoraResource;
import org.fcrepo.kernel.models.Tombstone;
import org.fcrepo.kernel.exception.TombstoneException;
import org.fcrepo.kernel.identifiers.IdentifierConverter;
import org.slf4j.Logger;
Expand Down
Expand Up @@ -34,7 +34,7 @@
import javax.ws.rs.core.Response;
import javax.ws.rs.core.StreamingOutput;

import org.fcrepo.kernel.FedoraResource;
import org.fcrepo.kernel.models.FedoraResource;
import org.fcrepo.serialization.FedoraObjectSerializer;
import org.fcrepo.serialization.SerializerUtil;
import org.slf4j.Logger;
Expand Down
Expand Up @@ -39,8 +39,8 @@
import javax.ws.rs.core.UriInfo;

import org.fcrepo.http.commons.responses.HtmlTemplate;
import org.fcrepo.kernel.FedoraBinary;
import org.fcrepo.kernel.FedoraResource;
import org.fcrepo.kernel.models.FedoraBinary;
import org.fcrepo.kernel.models.FedoraResource;
import org.fcrepo.kernel.utils.iterators.RdfStream;
import org.springframework.context.annotation.Scope;

Expand Down
28 changes: 14 additions & 14 deletions fcrepo-http-api/src/main/java/org/fcrepo/http/api/FedoraLdp.java
Expand Up @@ -23,10 +23,10 @@
import org.fcrepo.http.commons.domain.ContentLocation;
import org.fcrepo.http.commons.domain.PATCH;
import org.fcrepo.http.commons.domain.Prefer;
import org.fcrepo.kernel.Datastream;
import org.fcrepo.kernel.FedoraBinary;
import org.fcrepo.kernel.FedoraObject;
import org.fcrepo.kernel.FedoraResource;
import org.fcrepo.kernel.models.NonRdfSourceDescription;
import org.fcrepo.kernel.models.FedoraBinary;
import org.fcrepo.kernel.models.Container;
import org.fcrepo.kernel.models.FedoraResource;
import org.fcrepo.kernel.exception.InvalidChecksumException;
import org.fcrepo.kernel.exception.MalformedRdfException;
import org.fcrepo.kernel.exception.RepositoryRuntimeException;
Expand Down Expand Up @@ -84,7 +84,7 @@
import static org.fcrepo.http.commons.domain.RDFMediaType.TURTLE;
import static org.fcrepo.http.commons.domain.RDFMediaType.TURTLE_X;
import static org.fcrepo.jcr.FedoraJcrTypes.FEDORA_BINARY;
import static org.fcrepo.jcr.FedoraJcrTypes.FEDORA_OBJECT;
import static org.fcrepo.jcr.FedoraJcrTypes.FEDORA_CONTAINER;
import static org.fcrepo.kernel.impl.services.TransactionServiceImpl.getCurrentTransactionId;
import static org.slf4j.LoggerFactory.getLogger;

Expand Down Expand Up @@ -265,7 +265,7 @@ public Response createOrReplaceObjectRdf(
if (requestBodyStream == null && !resource.isNew()) {
throw new ClientErrorException("No RDF provided and the resource already exists!", CONFLICT);
} else if (requestBodyStream != null) {
if ((resource instanceof FedoraObject || resource instanceof Datastream)
if ((resource instanceof Container || resource instanceof NonRdfSourceDescription)
&& isRdfContentType(contentType.toString())) {
try {
replaceResourceWithStream(resource, requestBodyStream, contentType, resourceTriples);
Expand Down Expand Up @@ -371,7 +371,7 @@ public Response createObject(@QueryParam("checksum") final String checksum,
@ContentLocation final InputStream requestBodyStream)
throws InvalidChecksumException, IOException, MalformedRdfException {

if (!(resource() instanceof FedoraObject)) {
if (!(resource() instanceof Container)) {
throw new ClientErrorException("Object cannot have child nodes", CONFLICT);
}

Expand Down Expand Up @@ -403,7 +403,7 @@ public Response createObject(@QueryParam("checksum") final String checksum,
} else {
LOGGER.trace("Received createObject with a request body and content type \"{}\"", contentTypeString);

if ((result instanceof FedoraObject)
if ((result instanceof Container)
&& isRdfContentType(contentTypeString)) {
replaceResourceWithStream(result, requestBodyStream, contentType, resourceTriples);
} else if (result instanceof FedoraBinary) {
Expand Down Expand Up @@ -469,11 +469,11 @@ private void addOptionsHttpHeaders() {
if (resource() instanceof FedoraBinary) {
options = "DELETE,HEAD,GET,PUT,OPTIONS";

} else if (resource() instanceof Datastream) {
} else if (resource() instanceof NonRdfSourceDescription) {
options = "MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS";
servletResponse.addHeader("Accept-Patch", contentTypeSPARQLUpdate);

} else if (resource() instanceof FedoraObject) {
} else if (resource() instanceof Container) {
options = "MOVE,COPY,DELETE,POST,HEAD,GET,PUT,PATCH,OPTIONS";
servletResponse.addHeader("Accept-Patch", contentTypeSPARQLUpdate);

Expand All @@ -495,8 +495,8 @@ private void addResourceLinkHeaders(final FedoraResource resource) {
}

private void addResourceLinkHeaders(final FedoraResource resource, final boolean includeAnchor) {
if (resource instanceof Datastream) {
final URI uri = getUri(((Datastream) resource).getBinary());
if (resource instanceof NonRdfSourceDescription) {
final URI uri = getUri(((NonRdfSourceDescription) resource).getDescribedResource());
final Link link = Link.fromUri(uri).rel("describes").build();
servletResponse.addHeader("Link", link.toString());
} else if (resource instanceof FedoraBinary) {
Expand Down Expand Up @@ -526,7 +526,7 @@ private String getRequestedObjectType(final MediaType requestContentType,
return FEDORA_BINARY;
}

return FEDORA_OBJECT;
return FEDORA_CONTAINER;
}

private FedoraResource createFedoraResource(final String path,
Expand All @@ -539,7 +539,7 @@ private FedoraResource createFedoraResource(final String path,
if (objectType.equals(FEDORA_BINARY)) {
result = binaryService.findOrCreate(session, path);
} else {
result = objectService.findOrCreate(session, path);
result = containerService.findOrCreate(session, path);
}

return result;
Expand Down
Expand Up @@ -43,7 +43,7 @@

import org.fcrepo.http.commons.domain.COPY;
import org.fcrepo.http.commons.domain.MOVE;
import org.fcrepo.kernel.FedoraResource;
import org.fcrepo.kernel.models.FedoraResource;
import org.fcrepo.kernel.exception.RepositoryRuntimeException;
import org.slf4j.Logger;
import org.springframework.context.annotation.Scope;
Expand Down
Expand Up @@ -16,7 +16,7 @@
package org.fcrepo.http.api;

import com.google.common.annotations.VisibleForTesting;
import org.fcrepo.kernel.FedoraResource;
import org.fcrepo.kernel.models.FedoraResource;
import org.fcrepo.kernel.exception.RepositoryRuntimeException;
import org.springframework.context.annotation.Scope;

Expand Down
Expand Up @@ -51,7 +51,7 @@
import javax.ws.rs.core.UriInfo;

import org.fcrepo.http.commons.responses.HtmlTemplate;
import org.fcrepo.kernel.FedoraResource;
import org.fcrepo.kernel.models.FedoraResource;
import org.fcrepo.kernel.exception.RepositoryRuntimeException;
import org.fcrepo.kernel.exception.RepositoryVersionRuntimeException;
import org.fcrepo.kernel.impl.rdf.impl.VersionsRdfContext;
Expand Down
Expand Up @@ -18,8 +18,8 @@
import com.google.common.annotations.VisibleForTesting;
import org.fcrepo.http.commons.domain.PATCH;
import org.fcrepo.http.commons.domain.Prefer;
import org.fcrepo.kernel.FedoraBinary;
import org.fcrepo.kernel.FedoraResource;
import org.fcrepo.kernel.models.FedoraBinary;
import org.fcrepo.kernel.models.FedoraResource;
import org.fcrepo.kernel.utils.iterators.RdfStream;
import org.slf4j.Logger;
import org.springframework.context.annotation.Scope;
Expand Down

0 comments on commit 6883b68

Please sign in to comment.