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.api.operations; 007 008import org.fcrepo.kernel.api.identifiers.FedoraId; 009 010import java.net.URI; 011import java.util.Collection; 012 013/** 014 * Builder for operations to create non-rdf sources 015 * 016 * @author bbpennel 017 */ 018public interface CreateNonRdfSourceOperationBuilder extends NonRdfSourceOperationBuilder { 019 020 @Override 021 CreateNonRdfSourceOperationBuilder mimeType(String mimetype); 022 023 @Override 024 CreateNonRdfSourceOperationBuilder filename(String filename); 025 026 @Override 027 CreateNonRdfSourceOperationBuilder contentDigests(Collection<URI> digests); 028 029 @Override 030 CreateNonRdfSourceOperationBuilder contentSize(long size); 031 032 /** 033 * Set the parent identifier of the resource 034 * 035 * @param parentId parent internal identifier 036 * @return the builder 037 */ 038 CreateNonRdfSourceOperationBuilder parentId(FedoraId parentId); 039 040 @Override 041 CreateNonRdfSourceOperationBuilder userPrincipal(String userPrincipal); 042 043}