/* * Copyright 2014 JBoss Inc * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.artificer.server; import org.artificer.repository.AuditManager; import org.artificer.repository.query.ArtificerQueryArgs; import org.artificer.repository.query.PagedResult; import org.artificer.server.core.api.AuditService; import org.jboss.downloads.artificer._2013.auditing.AuditEntry; import javax.ejb.Remote; import javax.ejb.Stateful; import javax.ejb.TransactionManagement; import javax.ejb.TransactionManagementType; /** * @author Brett Meyer. */ @Stateful(name = "AuditService") @Remote(AuditService.class) // Required so that artificer-repository-hibernate can control the transactions during EJB calls. @TransactionManagement(TransactionManagementType.BEAN) public class AuditServiceImpl extends AbstractServiceImpl implements AuditService { @Override public AuditEntry create(String artifactUuid, AuditEntry auditEntry) throws Exception { AuditManager auditManager = auditManager(); return auditManager.addAuditEntry(artifactUuid, auditEntry); } @Override public AuditEntry get(String artifactUuid, String auditEntryUuid) throws Exception { AuditManager auditManager = auditManager(); return auditManager.getArtifactAuditEntry(artifactUuid, auditEntryUuid); } @Override public PagedResult<AuditEntry> queryByArtifact(String artifactUuid) throws Exception { AuditManager auditManager = auditManager(); return auditManager.getArtifactAuditEntries(artifactUuid, new ArtificerQueryArgs()); } @Override public PagedResult<AuditEntry> queryByArtifact(String artifactUuid, Integer startPage, Integer startIndex, Integer count) throws Exception { AuditManager auditManager = auditManager(); ArtificerQueryArgs args = new ArtificerQueryArgs(startPage, startIndex, count); return auditManager.getArtifactAuditEntries(artifactUuid, args); } @Override public PagedResult<AuditEntry> queryByUser(String username) throws Exception { AuditManager auditManager = auditManager(); return auditManager.getUserAuditEntries(username, new ArtificerQueryArgs()); } @Override public PagedResult<AuditEntry> queryByUser(String username, Integer startPage, Integer startIndex, Integer count) throws Exception { AuditManager auditManager = auditManager(); ArtificerQueryArgs args = new ArtificerQueryArgs(startPage, startIndex, count); return auditManager.getUserAuditEntries(username, args); } }