001/* 002 * The contents of this file are subject to the license and copyright 003 * detailed in the LICENSE and NOTICE files at the root of the source 004 * tree. 005 */ 006package org.fcrepo.kernel.impl.operations; 007 008import org.fcrepo.config.ServerManagedPropsMode; 009import org.fcrepo.kernel.api.Transaction; 010import org.fcrepo.kernel.api.identifiers.FedoraId; 011import org.fcrepo.kernel.api.operations.CreateRdfSourceOperationBuilder; 012import org.fcrepo.kernel.api.operations.RdfSourceOperationBuilder; 013import org.fcrepo.kernel.api.operations.RdfSourceOperationFactory; 014import org.springframework.stereotype.Component; 015 016 017/** 018 * Implementation of a factory for operations on rdf sources 019 * 020 * @author bbpennel 021 */ 022@Component 023public class RdfSourceOperationFactoryImpl implements RdfSourceOperationFactory { 024 025 @Override 026 public CreateRdfSourceOperationBuilder createBuilder(final Transaction transaction, 027 final FedoraId rescId, 028 final String interactionModel, 029 final ServerManagedPropsMode serverManagedPropsMode) { 030 return new CreateRdfSourceOperationBuilderImpl(transaction, rescId, interactionModel, serverManagedPropsMode); 031 } 032 033 @Override 034 public RdfSourceOperationBuilder updateBuilder(final Transaction transaction, 035 final FedoraId rescId, 036 final ServerManagedPropsMode serverManagedPropsMode) { 037 return new UpdateRdfSourceOperationBuilder(transaction, rescId, serverManagedPropsMode); 038 } 039}