Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Registering audit CND
  • Loading branch information
escowles committed Apr 29, 2015
1 parent 7edad2b commit 9807cbd
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 0 deletions.
6 changes: 6 additions & 0 deletions src/main/java/org/fcrepo/audit/InternalAuditor.java
Expand Up @@ -49,6 +49,7 @@
import org.fcrepo.kernel.utils.iterators.RdfStream;
import org.fcrepo.mint.UUIDPathMinter;

import org.modeshape.jcr.api.JcrTools;
import org.modeshape.jcr.api.Repository;
import org.modeshape.jcr.api.Session;
import org.slf4j.Logger;
Expand Down Expand Up @@ -92,6 +93,7 @@ public class InternalAuditor implements Auditor {
private ContainerService containerService;

private Session session;
private static JcrTools jcrTools = new JcrTools(true);

private static final PidMinter pidMinter = new UUIDPathMinter();

Expand All @@ -115,6 +117,10 @@ public void register() throws RepositoryRuntimeException {
}
session = repository.login();
containerService.findOrCreate(session, AUDIT_CONTAINER_LOCATION);

LOGGER.debug("Registering audit CND");
jcrTools.registerNodeTypes(session, "audit.cnd");

session.save();
} else {
LOGGER.warn("Cannot Initialize: {}", this.getClass().getCanonicalName());
Expand Down
9 changes: 9 additions & 0 deletions src/main/resources/audit.cnd
@@ -0,0 +1,9 @@
/*
* Audit namespaces
*/
<audit = 'http://fedora.info/definitions/v4/audit#'>
<prov = 'http://www.w3.org/ns/prov#'>

[audit:ExternalEvent] mixin
[audit:InternalEvent] mixin
[prov:InstantenousEvent] mixin
2 changes: 2 additions & 0 deletions src/test/java/org/fcrepo/audit/InternalAuditorTest.java
Expand Up @@ -55,6 +55,7 @@
import org.junit.Before;
import org.junit.Test;
import org.mockito.Mock;
import org.modeshape.jcr.api.JcrTools;
import org.modeshape.jcr.api.Repository;
import org.modeshape.jcr.api.Session;

Expand Down Expand Up @@ -124,6 +125,7 @@ public void setUp() {
public void testRegister() throws RepositoryException, LoginException {
System.setProperty(AUDIT_CONTAINER, "/audit");
when(mockRepository.login()).thenReturn(mockSession);
setField(testTnternalAuditor, "jcrTools", mock(JcrTools.class));
testTnternalAuditor.register();
verify(mockContainerService).findOrCreate(mockSession, "/audit");
verify(mockBus).register(any(InternalAuditor.class));
Expand Down

0 comments on commit 9807cbd

Please sign in to comment.