git clone https://@opensourceprojects.eu/git/p/timbus/context-population/extractors/wrapper-web timbus-context-population-extractors-wrapper-web



File Date Author Commit
META-INF 2014-03-21 miguelnunes miguelnunes [b63806] Merge branch 'extractionoutput' into develop
src 2014-05-22 miguelnunes miguelnunes [ab59f0] Changed gitignore
.gitignore 2014-05-22 miguelnunes miguelnunes [ab59f0] Changed gitignore
Readme.md 2014-03-20 miguelnunes miguelnunes [50fb18] Updated Readme.md
exampleRequest.txt 2014-03-18 miguelnunes miguelnunes [1bf8d5] Working version. First commit
exampleRequest.txt~ 2014-03-18 miguelnunes miguelnunes [1bf8d5] Working version. First commit
pom.xml 2014-07-31 Jorge Simões Jorge Simões [99358f] Added repository

Read Me

Extractor Wrapper WEB

Extractor Wrapper WEB is a wrapper for any web service based extractor.

 

1. How to get the code

git clone https://@opensourceprojects.eu/git/p/timbus/context-population/extractors/wrapper-web timbus-context-population-extractors-wrapper-web

 

2. Install Requirements

  1. Oracle Java JDK 1.7
-->

 

3. Relevant parameters

  1. A list of endpoints which return the desired extraction
  2. A list containing sets of field-value in order to construct the query string

 

4. Expected output

As the Extractor Wrapper is aimed to capture the output of any extractor, it does not expect any specific output. In this moment, it is designed to perform punctual web service extractions.
Version 0.0.3 of Extractors API will include a functionality in which it expects each extraction's output to contain a header which explicitly declares the format of the output.

 

5. TIMBUS Use Cases

Although this wrapper might be relevant to any service which exposes an extractor in a specific endpoint, WP 8 Use Case, more exacly Gest Barragens, is a good example of the usage of this wrapper:
In this case, it works together with the Windows DLL extractor develop by Andre Amado and has the following steps:

  1. Windows DLL Extractor works as a web service that returns various types of extractions from the dependencies of the machine it is based on
  2. Extractor Wrapper WEB, in order to capture its output and store in the context of Virgo for later conversion and context populating, is given the url that is offering the service and a series of parameters in order to produce the querystring.

 

5.1. Example JSON request:

1
2
3
4
5
6
7
8
{
"extractions":[
{"parameters":{
    "params":"[\"method::26\",\"appname29::gestBarragens\",\"option31::1\"]",
    "url":"http://134.191.240.80:443/WebServiceProjectClient/sampleServiceLoaderProxy/Result1.jsp"
    },
    "module":"Web Service Wrapper Extractor"}
]}

This request complies with the most recent version, 1.1, which receives the parameters dynamically from Extractors API within the "parameters" object.
It's a functional request for the mentioned extractor in WP8, and it includes specific parameters for capturing the gestBarragens .dll dependencies.
Please notice that the field-value combinations for the assembling of the querystring are forcefully connected with "::" and that one must include the proper escape backslashes when sending the request.

5.2. Example output:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
[
"AJAXCONTROLTOOLKIT.DLL": [
    {
        "name": " IESHIMS.DLL",
        "version": "null",
        "value": " IESHIMS.dll"
    },
    {
        "name": " WER.DLL",
        "version": "null",
        "value": " WER.dll"
    },
    {
        "name": "ACTIVEDS.DLL",
        "version": "Not Loaded",
        "value": " c:\\windows\\system32\\ACTIVEDS.dll"
    },
    {
        "name": "ADSLDPC.DLL",
        "version": "Not Loaded",
        "value": " c:\\windows\\system32\\ADSLDPC.dll"
    },
    ...

 

Author

Miguel Gama Nunes miguel.nunes@caixamagica.pt

 

License

Copyright (c) 2014, Caixa Magica Software Lda (CMS).
The work has been developed in the TIMBUS Project and the above-mentioned are Members of the TIMBUS Consortium.
TIMBUS is supported by the European Union under the 7th Framework Programme for research and technological development and demonstration activities (FP7/2007-2013) under grant agreement no. 269940.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at: http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTIBITLY, or FITNESS FOR A PARTICULAR PURPOSE. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law or agreed to in writing, shall any Contributor be liable for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work.
See the License for the specific language governing permissions and limitation under the License.