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 static org.fcrepo.kernel.api.operations.ResourceOperationType.CREATE; 011 012/** 013 * Operation for creating a resource 014 * 015 * @author bbpennel 016 */ 017public interface CreateResourceOperation extends ResourceOperation { 018 019 /** 020 * Get the identifier of the parent of the resource being created 021 * 022 * @return identifer of parent 023 */ 024 FedoraId getParentId(); 025 026 /** 027 * Get the interaction model of the resource being created 028 * 029 * @return interaction model 030 */ 031 String getInteractionModel(); 032 033 @Override 034 public default ResourceOperationType getType() { 035 return CREATE; 036 } 037 038 /** 039 * A flag indicating whether or the new resource should be created as an archival group. 040 * @return true if archival group 041 */ 042 boolean isArchivalGroup(); 043}