@Override protected AbstractWebSiteRepositoryConfiguration getExternalConfiguration( boolean forModification ) { return (AbstractWebSiteRepositoryConfiguration) super.getExternalConfiguration( forModification ); }
@Override public StorageItem retrieveDirectItem(ResourceStoreRequest request) throws IllegalOperationException, ItemNotFoundException, IOException { // bypass access control return super.retrieveItem(false, request); }
public void copyItem( ResourceStoreRequest from, ResourceStoreRequest to ) throws UnsupportedStorageOperationException, IllegalOperationException, ItemNotFoundException, StorageException, AccessDeniedException { if ( !checkConditions( from, Action.read ) ) { throw new IllegalRequestException( from, "copyItem: Operation does not fills needed requirements!" ); } if ( !checkConditions( to, getResultingActionOnWrite( to ) ) ) { throw new IllegalRequestException( to, "copyItem: Operation does not fills needed requirements!" ); } copyItem( false, from, to ); }
public void deleteItem( ResourceStoreRequest request ) throws UnsupportedStorageOperationException, IllegalOperationException, ItemNotFoundException, StorageException, AccessDeniedException { if ( !checkConditions( request, Action.delete ) ) { throw new AccessDeniedException( request, "Operation does not fills needed requirements!" ); } deleteItem( false, request ); }
if ( getLogger().isDebugEnabled() ) getLogger().debug( getId() + ".retrieveItem() :: " + request.toString() ); if ( !getLocalStatus().shouldServiceRequest() ) maintainNotFoundCache( request ); final RepositoryItemUid uid = createUid( request.getRequestPath() ); StorageItem item = doRetrieveItem( request ); if ( getContentGenerators().containsKey( key ) ) ContentGenerator generator = getContentGenerators().get( key ); getLogger().info( String.format( "The file in repository %s on path=\"%s\" should be generated by ContentGeneratorId=%s, but component does not exists!", eventBus().post( new RepositoryItemEventRetrieve( this, item ) ); if ( getLogger().isDebugEnabled() ) getLogger().debug( getId() + " retrieveItem() :: FOUND " + uid.toString() ); if ( getLogger().isDebugEnabled() ) getLogger().debug( getId() + " retrieveItem() :: NOT FOUND " + uid.toString() );
public void copyItem( boolean fromTask, ResourceStoreRequest from, ResourceStoreRequest to ) throws UnsupportedStorageOperationException, IllegalOperationException, ItemNotFoundException, StorageException if ( getLogger().isDebugEnabled() ) getLogger().debug( getId() + ".copyItem() :: " + from.toString() + " --> " + to.toString() ); if ( !getLocalStatus().shouldServiceRequest() ) maintainNotFoundCache( from ); final RepositoryItemUid fromUid = createUid( from.getRequestPath() ); final RepositoryItemUid toUid = createUid( to.getRequestPath() ); StorageItem item = retrieveItem( fromTask, from ); storeItem( fromTask, target ); removeFromNotFoundCache( to );
public StorageItem retrieveItem( ResourceStoreRequest request ) throws IllegalOperationException, ItemNotFoundException, StorageException, AccessDeniedException { if ( !checkConditions( request, Action.read ) ) { throw new ItemNotFoundException( request, this ); } StorageItem item = retrieveItem( false, request ); if ( StorageCollectionItem.class.isAssignableFrom( item.getClass() ) && !isBrowseable() ) { getLogger().debug( getId() + " retrieveItem() :: FOUND a collection on " + request.toString() + " but repository is not Browseable." ); throw new ItemNotFoundException( request, this ); } if ( !checkPostConditions( request, item ) ) { throw new ItemNotFoundException( request, this ); } return item; }
throws IllegalOperationException, AccessDeniedException if ( !this.getLocalStatus().shouldServiceRequest() ) if ( RepositoryWritePolicy.READ_ONLY.equals( getWritePolicy() ) && !isActionAllowedReadOnly( action ) ) throw new IllegalRequestException( request, "Repository with ID='" + getId() + "' is Read Only, but action was '" + action.toString() + "'!" ); enforceWritePolicy( request, action ); getAccessManager().decide( this, request, action ); return checkRequestProcessors( request, action );
public Collection<StorageItem> list( boolean fromTask, ResourceStoreRequest request ) throws IllegalOperationException, ItemNotFoundException, StorageException { if ( getLogger().isDebugEnabled() ) { getLogger().debug( getId() + ".list() :: " + request.toString() ); } if ( !getLocalStatus().shouldServiceRequest() ) { throw new RepositoryNotAvailableException( this ); } request.addProcessedRepository( this ); StorageItem item = retrieveItem( fromTask, request ); if ( item instanceof StorageCollectionItem ) { return list( fromTask, (StorageCollectionItem) item ); } else { throw new ItemNotFoundException( request, this ); } }
public void moveItem( boolean fromTask, ResourceStoreRequest from, ResourceStoreRequest to ) throws UnsupportedStorageOperationException, IllegalOperationException, ItemNotFoundException, StorageException { if ( getLogger().isDebugEnabled() ) { getLogger().debug( getId() + ".moveItem() :: " + from.toString() + " --> " + to.toString() ); } if ( !getLocalStatus().shouldServiceRequest() ) { throw new RepositoryNotAvailableException( this ); } copyItem( fromTask, from, to ); deleteItem( fromTask, from ); }
public void storeItem( ResourceStoreRequest request, InputStream is, Map<String, String> userAttributes ) throws UnsupportedStorageOperationException, IllegalOperationException, StorageException, AccessDeniedException { if ( !checkConditions( request, getResultingActionOnWrite( request ) ) ) { throw new AccessDeniedException( request, "Operation does not fills needed requirements!" ); } DefaultStorageFileItem fItem = new DefaultStorageFileItem( this, request, true, true, new PreparedContentLocator( is, getMimeSupport().guessMimeTypeFromPath( getMimeRulesSource(), request.getRequestPath() ) ) ); if ( userAttributes != null ) { fItem.getRepositoryItemAttributes().putAll( userAttributes ); } storeItem( false, fItem ); }
public void moveItem( ResourceStoreRequest from, ResourceStoreRequest to ) throws UnsupportedStorageOperationException, IllegalOperationException, ItemNotFoundException, StorageException, AccessDeniedException { if ( !checkConditions( from, Action.read ) ) { throw new AccessDeniedException( from, "Operation does not fills needed requirements!" ); } if ( !checkConditions( from, Action.delete ) ) { throw new AccessDeniedException( from, "Operation does not fills needed requirements!" ); } if ( !checkConditions( to, getResultingActionOnWrite( to ) ) ) { throw new AccessDeniedException( to, "Operation does not fills needed requirements!" ); } moveItem( false, from, to ); }
public Collection<StorageItem> list( ResourceStoreRequest request ) throws IllegalOperationException, ItemNotFoundException, StorageException, AccessDeniedException { if ( !checkConditions( request, Action.read ) ) { throw new ItemNotFoundException( request, this ); } Collection<StorageItem> items = null; if ( isBrowseable() ) { items = list( false, request ); } else { throw new ItemNotFoundException( request, this ); } return items; }
public void createCollection( ResourceStoreRequest request, Map<String, String> userAttributes ) throws UnsupportedStorageOperationException, IllegalOperationException, StorageException, AccessDeniedException { if ( !checkConditions( request, getResultingActionOnWrite( request ) ) ) { throw new AccessDeniedException( request, "Operation does not fills needed requirements!" ); } DefaultStorageCollectionItem coll = new DefaultStorageCollectionItem( this, request, true, true ); if ( userAttributes != null ) { coll.getRepositoryItemAttributes().putAll( userAttributes ); } storeItem( false, coll ); }
public static CRepository getRepositoryRawConfiguration(Repository repository) { return ((AbstractRepository)repository).getCurrentCoreConfiguration().getConfiguration(false); }
@Override public boolean commitChanges() throws ConfigurationException { boolean result = super.commitChanges(); if ( result ) { this.remoteUrlChanged = false; } return result; }
@Deprecated public void addToNotFoundCache( String path ) { addToNotFoundCache( new ResourceStoreRequest( path ) ); }
protected AbstractRepositoryConfiguration getExternalConfiguration( boolean forModification ) { final CoreConfiguration cc = getCurrentCoreConfiguration(); if ( cc != null ) { ExternalConfiguration<?> ec = cc.getExternalConfiguration(); if ( ec != null ) { return (AbstractRepositoryConfiguration) ec.getConfiguration( forModification ); } } return null; }
@Override protected AbstractGroupRepositoryConfiguration getExternalConfiguration( boolean forWrite ) { return (AbstractGroupRepositoryConfiguration) super.getExternalConfiguration( forWrite ); }
((AbstractRepository)repository).getCurrentCoreConfiguration() .getConfiguration(false).defaultLocalStorageUrl; resource.setDefaultLocalStorageUrl(defaultLocalStorageUrl); ((AbstractRepository)repository).getCurrentCoreConfiguration().getConfiguration(false) .getLocalStorage().getUrl(); if (StringUtils.isNotBlank(overrideLocalStorageUrl)) {