Package pt.webdetails.cpf.repository.api

Examples of pt.webdetails.cpf.repository.api.IReadAccess


  public String getFile( @QueryParam( MethodParams.PATH ) @DefaultValue( "" ) String path,
                         @Context HttpServletResponse response )
    throws IOException {

    IResourceLoader loader = getResourceLoader( path );
    IReadAccess reader = loader.getReader();

    if ( reader.fileExists( path ) && loader.getAccessControl().hasAccess( path, FileAccess.READ ) ) {
      response.setHeader( "Cache-Control", "max-age=" + NO_CACHE_DURATION );
      return IOUtils.toString( reader.getFileInputStream( path ) );
    } else {
      String msg = "File: " + path + " does not exist, or you do not have permissions to access it";
      logger.error( msg );
      return msg;
    }
View Full Code Here


  @Consumes( { APPLICATION_XML, APPLICATION_JSON } )
  public String createFolder( @FormParam( MethodParams.PATH ) @DefaultValue( "" ) String path,
                              @Context HttpServletResponse response ) throws IOException {

    IResourceLoader loader = getResourceLoader( path );
    IReadAccess reader = loader.getReader();
    IRWAccess writer = loader.getWriter();
    IACAccess access = loader.getAccessControl();


    String msg;
    if ( access.hasAccess( path, FileAccess.WRITE ) ) {
      if ( reader.fileExists( path ) ) {
        msg = "already exists: " + path;
        logger.debug( msg );
      } else {
        if ( writer.createFolder( path ) ) {
          msg = path + "created ok";
View Full Code Here

  @GET
  @Path( "/getExternalEditor" )
  @Produces( "text/html" )
  @Consumes( { APPLICATION_XML, APPLICATION_JSON } )
  public String externalEditor() throws IOException {
    IReadAccess access = CdeEnvironment.getPluginSystemReader();
    if ( access.fileExists( EXTERNAL_EDITOR_PAGE ) ) {
      return IOUtils.toString( access.getFileInputStream( EXTERNAL_EDITOR_PAGE ) );
    } else {
      String msg = "External editor not found: " + EXTERNAL_EDITOR_PAGE;
      logger.error( msg );
      return msg;
    }
View Full Code Here

  @GET
  @Path( "/getComponentEditor" )
  @Produces( "text/html" )
  @Consumes( { APPLICATION_XML, APPLICATION_JSON } )
  public String componentEditor() throws IOException {
    IReadAccess access = CdeEnvironment.getPluginSystemReader();
    if ( access.fileExists( COMPONENT_EDITOR_PAGE ) ) {
      return IOUtils.toString( access.getFileInputStream( COMPONENT_EDITOR_PAGE ) );
    } else {
      String msg = "no external editor found: " + COMPONENT_EDITOR_PAGE;
      logger.error( msg );
      return msg;
    }
View Full Code Here

      if ( path.startsWith( CdeEnvironment.getSystemDir() + "/" ) ) {
        isSystem = true;
      }
    }

    IReadAccess access = loader.getReader();

    GenericFileAndDirectoryFilter fileAndDirFilter = new GenericFileAndDirectoryFilter( fileFilter );

    if ( isSystem ) {
      // folder filtering ( see settings.xml ) will only occur for non-admin users
      if( !isAdministrator() ) {
        fileAndDirFilter.setDirectories( CdeSettings.getFilePickerHiddenFolderPaths( CdeSettings.FolderType.STATIC ) );
        fileAndDirFilter.setFilterType( GenericFileAndDirectoryFilter.FilterType.FILTER_OUT ); // act as a black-list
      }
      fileList = access.listFiles( dir, fileAndDirFilter , 1, true, false );
      fileList.remove( 0 ); //remove the first because the root is being added
    } else {
      // folder filtering ( see settings.xml ) will only occur for non-admin users
      if( !isAdministrator() ) {
        fileAndDirFilter.setDirectories( CdeSettings.getFilePickerHiddenFolderPaths( CdeSettings.FolderType.REPO ) );
        fileAndDirFilter.setFilterType( GenericFileAndDirectoryFilter.FilterType.FILTER_OUT ); // act as a black-list
      }
      fileList = access.listFiles( dir, fileAndDirFilter, 1, true, showHiddenFiles );
    }

    if ( fileList != null && fileList.size() > 0 ) {
      return fileList.toArray( new IBasicFile[ fileList.size() ] );
    }
View Full Code Here

      String fileDir =
        file.contains( ".wcdf" ) || file.contains( ".cdfde" ) ? file.substring( 0, file.lastIndexOf( "/" ) ) : file;

      isPreview = ( file.indexOf( "_tmp.cdfde" ) > -1 || file.indexOf( "_tmp.wcdf" ) > -1 );

      IReadAccess rwAccess = Utils.getSystemOrUserRWAccess( file );

      if ( rwAccess == null ) {
        String msg = "Access denied for the syncronize method syncronizeDashboard." + operation + " : " + file;
        logger.warn( msg );
        return JsonUtils.getJsonResult( false, msg );
View Full Code Here

      String fileDir =
        file.contains( ".wcdf" ) || file.contains( ".cdfde" ) ? file.substring( 0, file.lastIndexOf( "/" ) ) : file;

      isPreview = ( file.indexOf( "_tmp.cdfde" ) > -1 || file.indexOf( "_tmp.wcdf" ) > -1 );

      IReadAccess rwAccess = null;
      if ( OPERATION_SAVE_AS.equalsIgnoreCase( operation ) && !isPreview ) {
        rwAccess = Utils.getSystemOrUserRWAccess( fileDir );
      } else {
        rwAccess = Utils.getSystemOrUserRWAccess( file );
      }
View Full Code Here

                        @QueryParam( MethodParams.STYLE ) @DefaultValue( "" ) String style,
                        @Context HttpServletRequest request ) throws IOException {

    String scheme = inferScheme ? "" : request.getScheme();
    String filePath = getWcdfRelativePath( solution, path, file ); //FIXME Util.joinPath
    IReadAccess readAccess = Utils.getSystemOrUserReadAccess( filePath );

    if ( readAccess == null ) {
      return "Access Denied or File Not Found.";
    }
View Full Code Here

TOP

Related Classes of pt.webdetails.cpf.repository.api.IReadAccess

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.