Ejemplo n.º 1
0
  /*
   * generate Java Service EJB Impl TAFJ
   */
  public void genServiceEJBTAFJImpl(ServiceDescriptor service, Writer writer)
      throws LoadTemplateException {

    template = m_loader.loadTemplate(JAVA_EJB_IMPL_TEMPLATE);

    VelocityContext ctx = new VelocityContext();
    try {
      ctx.put("service", service);
      ctx.put("codeGeneratingFor", "TAFJ");
      ctx.put("serviceClassName", service.getServiceEJBImplName("TAFJ"));
      ctx.put(
          "serviceImplements",
          service.getServiceEJBAPIName("Local") + ", " + service.getServiceEJBAPIName("Remote"));
      ctx.put("importedServiceAPI", service.getName() + "API");
      ctx.put("importedServiceImpl", service.getName() + "Impl");
      // runtimeProps is instantiated in velocity Template
      ctx.put(
          "importedServiceImplInstantiation", "new " + service.getName() + "Impl(runtimeProps)");
      ctx.put("ejbCreateLogMessage", " with session properties : \" + runtimeProps");
      ctx.put("ejbCleanCode", "serviceAPI.cleanup();\n		serviceAPI = null;");
      // Common import
      List<String> commonImports = new ArrayList<String>();
      String commonPackage = "com.temenos.soa.services.";
      commonImports.add(commonPackage + "RuntimeProperties");
      commonImports.add(commonPackage + "UserContextCallBack");
      commonImports.add(commonPackage + "T24UserContextCallBackImpl");
      commonImports.add(commonPackage + "data.ResponseDetails");
      commonImports.add(commonPackage + "data.UserDetails");
      commonImports.add(commonPackage + "data.T24UserDetails");
      commonImports.add(commonPackage + "data.SSOUserDetails");
      ctx.put("commonImports", commonImports);

      System.out.println(
          "Merging Template - "
              + service.getServiceEJBImplName("TAFJ")
              + ": "
              + JAVA_EJB_IMPL_TEMPLATE);
      template.merge(ctx, writer);
      System.out.println("Done");
      writer.close();
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
  /*
   * generate JBC subroutine to query the meta data of this service component
   */
  public void genSubroutine(ServiceDescriptor serviceDescriptor, Writer writer)
      throws LoadTemplateException {

    template = m_loader.loadTemplate(API_TEMPLATE);

    VelocityContext ctx = new VelocityContext();
    try {

      ctx.put("service", serviceDescriptor);
      System.out.println(
          "Merging Template - "
              + serviceDescriptor.getName()
              + ".getCustomizedTypeStructure"
              + ": "
              + API_TEMPLATE);
      template.merge(ctx, writer);
      System.out.println("Done");
      writer.close();
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
Ejemplo n.º 3
0
  /*
   * generate Java Service EJB Local API
   */
  public void genServiceEJBLocalAPI(ServiceDescriptor service, Writer writer)
      throws LoadTemplateException {

    template = m_loader.loadTemplate(JAVA_EJB_API_TEMPLATE);

    VelocityContext ctx = new VelocityContext();
    try {
      ctx.put("service", service);
      ctx.put("interfaceName", "Local");
      ctx.put("interfaceClassName", service.getServiceEJBAPIName("Local"));
      ctx.put("soaPackageName", "com.temenos.soa.services");

      System.out.println(
          "Merging Template - "
              + service.getServiceEJBAPIName("Local")
              + ": "
              + JAVA_EJB_API_TEMPLATE);
      template.merge(ctx, writer);
      System.out.println("Done");
      writer.close();
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
 public JavaProviderServiceGenerator(VelocityTemplateLoader loader) throws LoadTemplateException {
   template = loader.loadTemplate(TEMPLATE);
 }
Ejemplo n.º 5
0
  /*
   * This method will generate the ejb resources
   */
  public void genServiceEJBResourcesForTAFJ(ServiceDescriptor service, Writer writer, String path)
      throws LoadTemplateException {

    template = m_loader.loadTemplate(JAVA_EJB_RESOURCES_TEMPLATE);
    String GENERATED_JAVA_EJB_RSR_DIR = path + File.separator + "META-INF";
    String dirName = GENERATED_JAVA_EJB_RSR_DIR + File.separator + "tafj";
    // a. ejb-jar.xml
    try {
      Document xmlDoc = getServiceEJBJARXML(service, "TAFJ");
      Document updatedDoc = null;
      String descFileName = "ejb-jar.xml";
      boolean fileExists = checkIfFileAlreadyExists(dirName, descFileName);
      if (fileExists) {
        // This means we have to append above document to the existing file contents
        updatedDoc = appendXMLDoc(xmlDoc, dirName, descFileName);
      } else {
        updatedDoc = xmlDoc;
      }
      VelocityContext ctx = new VelocityContext();
      ctx.put("resourceXML", StringUtils.transformXMLToString(updatedDoc));
      System.out.println(
          "Merging Template - "
              + dirName
              + File.separator
              + descFileName
              + ": "
              + JAVA_EJB_RESOURCES_TEMPLATE);
      Writer localWriter;
      if (writer == null) localWriter = createWriter(dirName, descFileName);
      else localWriter = writer;
      template.merge(ctx, localWriter);
      System.out.println("Done");
      localWriter.close();
    } catch (IOException e) {
      e.printStackTrace();
    }

    // b. jboss.xml
    try {
      Document xmlDoc = getServiceJbossXML(service, "TAFJ");
      Document updatedDoc = null;
      String descFileName = "jboss.xml";
      boolean fileExists = checkIfFileAlreadyExists(dirName, descFileName);
      if (fileExists) {
        // This means we have to append above document to the existing file contents
        updatedDoc = appendXMLDoc(xmlDoc, dirName, descFileName);
      } else {
        updatedDoc = xmlDoc;
      }
      VelocityContext ctx = new VelocityContext();
      ctx.put("resourceXML", StringUtils.transformXMLToString(updatedDoc));
      System.out.println(
          "Merging Template - "
              + dirName
              + File.separator
              + descFileName
              + ": "
              + JAVA_EJB_RESOURCES_TEMPLATE);
      Writer localWriter;
      if (writer == null) localWriter = createWriter(dirName, descFileName);
      else localWriter = writer;
      template.merge(ctx, localWriter);
      System.out.println("Done");
      localWriter.close();
    } catch (IOException e) {
      e.printStackTrace();
    }

    // c. ibm-ejb-jar-bnd
    try {
      Document xmlDoc = getServiceIBMXML(service, "TAFJ");
      Document updatedDoc = null;
      String descFileName = "ibm-ejb-jar-bnd.xml";
      boolean fileExists = checkIfFileAlreadyExists(dirName, descFileName);
      if (fileExists) {
        // This means we have to append above document to the existing file contents
        updatedDoc = appendXMLDoc(xmlDoc, dirName, descFileName);
      } else {
        updatedDoc = xmlDoc;
      }
      VelocityContext ctx = new VelocityContext();
      ctx.put("resourceXML", StringUtils.transformXMLToString(updatedDoc));
      System.out.println(
          "Merging Template - "
              + dirName
              + File.separator
              + descFileName
              + ": "
              + JAVA_EJB_RESOURCES_TEMPLATE);
      Writer localWriter;
      if (writer == null) localWriter = createWriter(dirName, descFileName);
      else localWriter = writer;
      template.merge(ctx, localWriter);
      System.out.println("Done");
      localWriter.close();
    } catch (IOException e) {
      e.printStackTrace();
    }

    // d. weblogic-ejb-jar
    try {
      Document xmlDoc = getServiceWebLogicXML(service, "TAFJ");
      Document updatedDoc = null;
      String descFileName = "weblogic-ejb-jar.xml";
      boolean fileExists = checkIfFileAlreadyExists(dirName, descFileName);
      if (fileExists) {
        // This means we have to append above document to the existing file contents
        updatedDoc = appendXMLDoc(xmlDoc, dirName, descFileName);
      } else {
        updatedDoc = xmlDoc;
      }
      VelocityContext ctx = new VelocityContext();
      ctx.put("resourceXML", StringUtils.transformXMLToString(updatedDoc));
      System.out.println(
          "Merging Template - "
              + dirName
              + File.separator
              + descFileName
              + ": "
              + JAVA_EJB_RESOURCES_TEMPLATE);
      Writer localWriter;
      if (writer == null) localWriter = createWriter(dirName, descFileName);
      else localWriter = writer;
      template.merge(ctx, localWriter);
      System.out.println("Done");
      localWriter.close();
    } catch (IOException e) {
      e.printStackTrace();
    }

    // e. jboss-ejb3.xml [jBoss 7+]
    try {
      Document xmlDoc = getServiceJbossEJB3XML(service, "TAFJ");
      Document updatedDoc = null;
      String descFileName = "jboss-ejb3.xml";
      boolean fileExists = checkIfFileAlreadyExists(dirName, descFileName);
      if (fileExists) {
        // This means we have to append above document to the existing file contents
        updatedDoc = appendXMLDoc(xmlDoc, dirName, descFileName);
      } else {
        updatedDoc = xmlDoc;
      }
      VelocityContext ctx = new VelocityContext();
      ctx.put("resourceXML", StringUtils.transformXMLToString(updatedDoc));
      System.out.println(
          "Merging Template - "
              + dirName
              + File.separator
              + descFileName
              + ": "
              + JAVA_EJB_RESOURCES_TEMPLATE);
      Writer localWriter;
      if (writer == null) localWriter = createWriter(dirName, descFileName);
      else localWriter = writer;
      template.merge(ctx, localWriter);
      System.out.println("Done");
      localWriter.close();
    } catch (IOException e) {
      e.printStackTrace();
    }
  }