Package org.pentaho.platform.api.repository

Examples of org.pentaho.platform.api.repository.IContentItem


       * the flag "hasResponse" should be set if the outputHandler is expected to serve a response back via either the
       * "response.content" output (a final content output), or an intermediate response such as a form to request
       * parameters such as from a SecureFilterComponent.
       */
      boolean hasResponse = outputHandler.isResponseExpected();
      IContentItem responseContentItem =
          outputHandler.getOutputContentItem( IOutputHandler.RESPONSE, IOutputHandler.CONTENT, null, null );

      boolean success = ( runtime != null && runtime.getStatus() == IRuntimeContext.RUNTIME_STATUS_SUCCESS );
      boolean debugMessages = doMessages( request );
      boolean printSuccess = ( runtime != null ) && success && ( !hasResponse || debugMessages );
      boolean printError = ( runtime != null ) && !success && !response.isCommitted();

      if ( printSuccess || printError ) {
        final String htmlMimeType = "text/html"; //$NON-NLS-1$
        responseContentItem.setMimeType( htmlMimeType );
        // this is going to be the response output stream unless you are in debug mode
        outputStream = responseContentItem.getOutputStream( null );

        response.setContentType( htmlMimeType );
        StringBuffer buffer = new StringBuffer();

        IMessageFormatter formatter = PentahoSystem.get( IMessageFormatter.class, PentahoSessionHolder.getSession() );

        if ( printSuccess ) {
          boolean doWrapper = !( "false".equals( request.getParameter( "wrapper" ) ) ); //$NON-NLS-1$ //$NON-NLS-2$
          formatter.formatSuccessMessage( htmlMimeType, runtime, buffer, debugMessages, doWrapper );
        } else {
          response.resetBuffer();
          formatter.formatFailureMessage( htmlMimeType, runtime, buffer, requestHandler.getMessages() );
        }

        outputStream.write( buffer.toString().getBytes( LocaleHelper.getSystemEncoding() ) );
        responseContentItem.closeOutputStream();
      }
    } finally {
      if ( runtime != null ) {
        runtime.dispose();
      }
View Full Code Here


          || AbstractJFreeReportComponent.REPORTALLCONTENT_OUTPUTTYPE_CSV.equals( outputFormat )
          || AbstractJFreeReportComponent.REPORTALLCONTENT_OUTPUTTYPE_RTF.equals( outputFormat )
          || AbstractJFreeReportComponent.REPORTALLCONTENT_OUTPUTTYPE_XML.equals( outputFormat ) ) {
        String mimeType = getMimeType( outputFormat );
        String fileExtention = getFileExtension( outputFormat );
        IContentItem contentItem = getContentItem( mimeType, fileExtention );
        OutputStream outputStream = null;
        if ( contentItem != null ) {
          outputStream = contentItem.getOutputStream( getActionName() );
        } else {
          outputStream = getDefaultOutputStream( mimeType );
        }
        result =
            writeReport( outputFormat, report, outputStream, jFreeReportAction.getReportGenerationYieldRate()
                .getIntValue( 0 ), jFreeReportAction.getHtmlContentHandlerUrlPattern().getStringValue() );
        if ( contentItem != null ) {
          contentItem.closeOutputStream();
        }
      } else {
        warn( Messages.getInstance().getString( "JFreeReportAllContentComponent.WARN_NO_PRINTER_GIVEN" ) ); //$NON-NLS-1$
      }
    } finally {
View Full Code Here

  }

  protected IContentItem getContentItem( final String mimeType, final String extension ) {
    JFreeReportAction jFreeReportAction = (JFreeReportAction) getActionDefinition();
    // Try to get the output from the action-sequence document.
    IContentItem contentItem = null;
    IActionOutput actionOutput = jFreeReportAction.getOutputReport();
    if ( actionOutput != null ) {
      contentItem = getOutputItem( actionOutput.getName(), mimeType, extension );
      contentItem.setMimeType( mimeType );
    } else if ( getOutputNames().size() == 1 ) {
      String outputName = (String) getOutputNames().iterator().next();
      contentItem = getOutputContentItem( outputName, mimeType );
      contentItem.setMimeType( mimeType );
    }
    return contentItem;
  }
View Full Code Here

    }

    if ( instanceId == null ) {
      setInstanceId( UUIDUtil.getUUIDAsString() );
    }
    IContentItem contentItem = outputHandler.getOutputContentItem( "response", "content", instanceId, getMimeType() ); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
    if ( contentItem == null ) {
      error( Messages.getInstance().getErrorString( "SimpleContentGenerator.ERROR_0002_NO_CONTENT_ITEM" ) ); //$NON-NLS-1$
      throw new InvalidParameterException( Messages.getInstance().getString(
          "SimpleContentGenerator.ERROR_0002_NO_CONTENT_ITEM" ) ); //$NON-NLS-1$
    }

    contentItem.setMimeType( getMimeType() );

    out = contentItem.getOutputStream( itemName );
    if ( out == null ) {
      error( Messages.getInstance().getErrorString( "SimpleContentGenerator.ERROR_0003_NO_OUTPUT_STREAM" ) ); //$NON-NLS-1$
      throw new InvalidParameterException( Messages.getInstance().getString(
          "SimpleContentGenerator.ERROR_0003_NO_OUTPUT_STREAM" ) ); //$NON-NLS-1$
    }
View Full Code Here

      if ( ( getActionDefinition() != null ) && ( getActionDefinition().getOutput( "outputstream" ) != null ) ) { //$NON-NLS-1$
        mappedOutputName = getActionDefinition().getOutput( "outputstream" ).getPublicName(); //$NON-NLS-1$
      }

      // this marks the HttpOutputHandler as contentDone=true, causing the MessageFormatter to not print an error
      IContentItem contentItem = getOutputContentItem( mappedOutputName, mimeType );
      if ( !( contentItem instanceof SimpleContentItem ) ) {
        // SimpleContentItem can't handle being added to outputs because it
        // doesn't have a getInputStream(), and the path used to return
        // null.
        setOutputValue( "outputstream", contentItem ); //$NON-NLS-1$
      }
      // set the output stream
      OutputStream out = contentItem.getOutputStream( getActionName() );
      method = setMethods.get( "OUTPUTSTREAM" ).get( 0 ); //$NON-NLS-1$
      method.invoke( pojo, new Object[] { out } );
    }

    if ( validateMethod != null ) {
View Full Code Here

  private String path = ""; //$NON-NLS-1$

  public IContentItem getFileOutputContentItem() {
    path = getContentRef();
    IContentItem item = new BufferedContentItem( this );
    item.setName( path );
    item.setMimeType( getMimeType() );
    return item;
  }
View Full Code Here

  public void testAudit() {
    startTest();

    ApacheVFSOutputHandler handler = new ApacheVFSOutputHandler();
    IContentItem contentItem = handler.getFileOutputContentItem();
    System.out.println( "Content Item for VFS" + contentItem ); //$NON-NLS-1$ 

    assertTrue( true );
    finishTest();
  }
View Full Code Here

   * @deprecated
   * @return
   */
  @Deprecated
  protected OutputStream getDefaultOutputStream( final String mimeType ) {
    IContentItem contentItem = runtimeContext.getOutputContentItem( mimeType );
    if ( contentItem != null ) {
      try {
        return contentItem.getOutputStream( getActionName() );
      } catch ( Exception e ) {
        getLogger().error( e );
      }
    }
    return null;
View Full Code Here

  protected boolean isPromptPending() {
    return runtimeContext.isPromptPending();
  }

  protected void setFeedbackMimeType( final String mimeType ) {
    IContentItem feedbackContentItem = runtimeContext.getFeedbackContentItem();
    feedbackContentItem.setMimeType( mimeType );
  }
View Full Code Here

   * @deprecated
   * @return
   */
  @Deprecated
  protected void setOutputMimeType( final String mimeType ) {
    IContentItem outputContentItem = runtimeContext.getOutputContentItem( mimeType );
    outputContentItem.setMimeType( mimeType );
  }
View Full Code Here

TOP

Related Classes of org.pentaho.platform.api.repository.IContentItem

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.