How to design a Service to Automate mappings

Hello ALL,

I am just dreaming to build a service(Flow or Java) which should automatically create mappings in the pipeline. Say For Ex, you have to map the fields from a Document to a Canonical Document. Following are my queries.

  1. Is it possible to create such a service which will map the fields without we having to manually drag it from left to right? OR Is this Simply impossible ?

  2. Can we create a service which can be called from a DSP/JSP page to create packages, folder, and JDBC adapter connections ? Users will just have to pass the input parameters, and that service will create all the packages and adapter services.

  3. Any service which can Unit test the Flow service ?

  4. The Admin page of the IS are all DSP’s. Is there any way we can see their code? or any document that might help me here.

  5. Any framework to implement Version Control in WM?

I am using IS 6.1 SP2. I am involved in a project which aims to reduce the development time and testing time for simple JDBC Integrations.

It will be great if anyone can guide me on how to proceed with the above.

Thanks
Johnrose.

Hello Friends,

Any ideas regarding this.

Thanks.

Hi,
The flow services are identified by node.ndf files inside Integration Server packages folder… When creating a flow service, a .ndf file is generated which contains xml data…

XML data - contains all mapping information as well as input/output references… :eek:

A kind of reverse engineering is required to achieve ur requirement… But to do this, a lot of understanding is required - how the xml data is structured…

johnrose

(Q1)As described by Senthil, it is certainly do-able to do what you want provided you have enough understanding how the xml file is structured. You may have to write some Java services and invoke some internal APIs which are not documented.

(Q2) This is also do-able as the packages etc. in wM are just plain old Java package structure. Again you need to have enough understanding of what happened in the background. You may have to invoke internal APIs (undocumented) as well.

(Q3) I don’t quite get what you want. wM does not have a unit test framework out-of-the box (such as JUnit), although there is a 3rd party software, namely wMUnit, which offers such functionality. Normally you’d have write your own Unit Test case services and run your service against them.

(Q4) There is no document describing how the Admin Page works, but certainly you can go to the directory structure (pub folder) and find the dsp pages and see how each one of them works and what services it invokes. You just have to reverse engineer yourself. Many developers uses Admin page as example to create their own dsp pages. This forum is a good starting point. You may find others who have done similar things. But I DO NOT recommend you to mess around with the original Admin pages unless if you know what you’re doing.

(Q5) With the version that you’re using, I can’t recall any framework for version control, but there are several practices which you can follow. You can search around this forum for examples. Alternatively, if you can’t find anything, you can go to customware’s website (one of SAG partner), it has some good tips on how to do version control

In general I do not recommend you to mess around with calling internal APIs directly. Most likely undocumented internal APIs are not supported by SoftwareAG.

You can create some wrappers around your services that call the internal APIs if you like, bearing in mind that when you upgrade your wM platform (knowing that 6.1 will soon be out of support - or probably has) there will be differences in those internal APIs. Almost certain you have to change the way your wrappers communicate with the internal APIs, but this way your “logic services” do not have to be changed. Hence, it is easier for you to do the unit tests.

K

Thanks Senthil. Will certainly take a clue frm your suggestions.