1 16 package org.outerj.daisy.repository.commonimpl; 17 18 import org.outerj.daisy.repository.RepositoryException; 19 import org.outerj.daisy.repository.LockType; 20 import org.outerj.daisy.repository.VersionState; 21 import org.outerj.daisy.repository.Document; 22 23 import java.io.InputStream ; 24 25 52 public interface DocumentStrategy { 53 public Document load(AuthenticatedUser user, long documentId, long branchId, long languageId) throws RepositoryException; 54 55 60 public void store(DocumentImpl document) throws RepositoryException; 61 62 66 public Document createVariant(long documentId, long startBranchId, long startLanguageId, long startVersionId, long newBranchId, long newLanguageId, AuthenticatedUser user) throws RepositoryException; 67 68 public AvailableVariantImpl[] getAvailableVariants(long documentId, AuthenticatedUser user) throws RepositoryException; 69 70 public void deleteDocument(long documentId, AuthenticatedUser user) throws RepositoryException; 71 72 public void deleteVariant(long documentId, long branchId, long languageId, AuthenticatedUser user) throws RepositoryException; 73 74 public VersionImpl loadVersion(DocumentVariantImpl documentVariant, long versionId) throws RepositoryException; 75 76 80 public void completeVersion(DocumentVariantImpl variant, VersionImpl version) throws RepositoryException; 81 82 86 public VersionImpl[] loadShallowVersions(DocumentVariantImpl variant) throws RepositoryException; 87 88 public void setVersionState(DocumentImpl document, VersionImpl version, VersionState versionState) throws RepositoryException; 89 90 public InputStream getBlob(long documentId, long branchId, long languageId, long versionId, long partTypeId, AuthenticatedUser user) throws RepositoryException; 91 92 96 public InputStream getBlob(String blobKey) throws RepositoryException; 97 98 104 public LockInfoImpl lock(DocumentVariantImpl documentVariant, long duration, LockType lockType) throws RepositoryException; 105 106 public LockInfoImpl getLockInfo(DocumentVariantImpl documentVariant) throws RepositoryException; 107 108 public LockInfoImpl releaseLock(DocumentVariantImpl documentVariant) throws RepositoryException; 109 110 public String getClientVersion(AuthenticatedUser user); 111 112 public String getServerVersion(AuthenticatedUser user); 113 } 114 | Popular Tags |