Show TOC

Background documentationExample Locate this document in the navigation structure

 

The following code sample executes an XML script:

Syntax Syntax

  1. package com.sap.portal.testing.gc;
    
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.util.Enumeration;
    import java.util.List;
    
    import com.sap.portal.genericcreator.GenericCreatorParams;
    import com.sap.portal.genericcreator.GenericCreatorResult;
    import com.sap.portal.genericcreator.IGenericCreator;
    import com.sap.portal.genericcreator.IGenericCreatorGatewayService;
    import com.sap.portal.genericcreator.IGenericCreatorResults;
    import com.sap.portal.ivs.genericcreator.Reporter;
    import com.sapportals.portal.prt.component.AbstractPortalComponent;
    import com.sapportals.portal.prt.component.IPortalComponentRequest;
    import com.sapportals.portal.prt.component.IPortalComponentResponse;
    import com.sapportals.portal.prt.runtime.PortalRuntime;
    
    public class GCReporterThreadTest extends AbstractPortalComponent {
    
        public void doContent(IPortalComponentRequest request, 
                IPortalComponentResponse response) {
            testGenericCreatorAPI(request,response);
        }
    
        // Main routine
        public void testGenericCreatorAPI(IPortalComponentRequest request, 
                IPortalComponentResponse response) {
    
            // Get service
            IGenericCreatorGatewayService gwService =
                (IGenericCreatorGatewayService)PortalRuntime
                    .getRuntimeResources().getService(
                        IGenericCreatorGatewayService.KEY);
            IGenericCreator genericCreator = gwService.getGenericCreator();
    
            // Set user and XML
            GenericCreatorParams gcParams = new 
              GenericCreatorParams(request.getUser(),getGCString());
    
            // Execute script
            IGenericCreatorResults gcResults = 
                genericCreator.generate(gcParams);
            GenericCreatorResult res = gcResults.getResult();
    
            // Print results
            response.write("succeeded? -> " + 
                res.equals(GenericCreatorResult.SUCCESS) + "<br>");
    
            printNodes(response,"Parsed",gcResults.getParsedNodes());
            printNodes(response,"Validation Failed",gcResults.getValidationFailedNodes());
            printNodes(response,"Executed",gcResults.getExecutedNodes());
            printNodes(response,"Ignored",gcResults.getIgnoredNodes());
            printNodes(response,"Succeeded",gcResults.getSucceededNodes());
            printNodes(response,"Failed",gcResults.getFailedNodes());
    
            response.write(gcResults.getReport());
        }
    
        // Print routine (prints results)
        private static void printNodes(IPortalComponentResponse response,
            String type,Enumeration enum) {
    
            response.write(type + " Nodes<br>");
            while (enum.hasMoreElements()) {
                response.write((String)enum.nextElement() + "<br>");
            }
            response.write("<br>");
        }
    
        // Creates XML script
        private static String getGCString() {
            StringBuffer sb = new StringBuffer("<GenericCreator author="SAP" version="Testing" mode="clean,execute" report.level="success" createMode="1" default.locale="en" ignore="false">");
           sb.append("<Context parent="portal_content" name="test_folder" objectClass="com.sap.portal.pcd.gl.GlContext" title="Test folder">");
           sb.append("</Context></GenericCreator>");
    
           return sb.toString();
        }
    }
    
End of the code.