Project

General

Profile

« Previous | Next » 

Revision 60645

View differences:

modules/dnet-isti/branches/OpenaireAccessToken/.factorypath
1
<factorypath>
2
    <factorypathentry kind="VARJAR" id="M2_REPO/eu/dnetlib/dnet-msro-service/5.0.0-SNAPSHOT/dnet-msro-service-5.0.0-SNAPSHOT.jar" enabled="true" runInBatchMode="false"/>
3
    <factorypathentry kind="VARJAR" id="M2_REPO/eu/dnetlib/dnet-core-services/1.0.0-SNAPSHOT/dnet-core-services-1.0.0-SNAPSHOT.jar" enabled="true" runInBatchMode="false"/>
4
    <factorypathentry kind="VARJAR" id="M2_REPO/com/google/code/gson/gson/2.6.2/gson-2.6.2.jar" enabled="true" runInBatchMode="false"/>
5
    <factorypathentry kind="VARJAR" id="M2_REPO/org/mongodb/mongo-java-driver/3.4.2/mongo-java-driver-3.4.2.jar" enabled="true" runInBatchMode="false"/>
6
    <factorypathentry kind="VARJAR" id="M2_REPO/com/typesafe/config/1.3.0/config-1.3.0.jar" enabled="true" runInBatchMode="false"/>
7
    <factorypathentry kind="VARJAR" id="M2_REPO/javax/mail/mail/1.4.7/mail-1.4.7.jar" enabled="true" runInBatchMode="false"/>
8
    <factorypathentry kind="VARJAR" id="M2_REPO/javax/activation/activation/1.1/activation-1.1.jar" enabled="true" runInBatchMode="false"/>
9
    <factorypathentry kind="VARJAR" id="M2_REPO/org/codehaus/groovy/groovy-all/2.4.6/groovy-all-2.4.6.jar" enabled="true" runInBatchMode="false"/>
10
    <factorypathentry kind="VARJAR" id="M2_REPO/eu/dnetlib/dnet-core-components/1.0.0-SNAPSHOT/dnet-core-components-1.0.0-SNAPSHOT.jar" enabled="true" runInBatchMode="false"/>
11
    <factorypathentry kind="VARJAR" id="M2_REPO/org/quartz-scheduler/quartz/2.2.2/quartz-2.2.2.jar" enabled="true" runInBatchMode="false"/>
12
    <factorypathentry kind="VARJAR" id="M2_REPO/c3p0/c3p0/0.9.1.1/c3p0-0.9.1.1.jar" enabled="true" runInBatchMode="false"/>
13
    <factorypathentry kind="VARJAR" id="M2_REPO/org/slf4j/slf4j-api/1.7.7/slf4j-api-1.7.7.jar" enabled="true" runInBatchMode="false"/>
14
    <factorypathentry kind="VARJAR" id="M2_REPO/org/springframework/spring-context/4.2.5.RELEASE/spring-context-4.2.5.RELEASE.jar" enabled="true" runInBatchMode="false"/>
15
    <factorypathentry kind="VARJAR" id="M2_REPO/org/springframework/spring-beans/4.2.5.RELEASE/spring-beans-4.2.5.RELEASE.jar" enabled="true" runInBatchMode="false"/>
16
    <factorypathentry kind="VARJAR" id="M2_REPO/org/springframework/spring-context-support/4.2.5.RELEASE/spring-context-support-4.2.5.RELEASE.jar" enabled="true" runInBatchMode="false"/>
17
    <factorypathentry kind="VARJAR" id="M2_REPO/com/google/guava/guava/18.0/guava-18.0.jar" enabled="true" runInBatchMode="false"/>
18
    <factorypathentry kind="VARJAR" id="M2_REPO/net/sf/ehcache/ehcache-core/2.6.2/ehcache-core-2.6.2.jar" enabled="true" runInBatchMode="false"/>
19
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/lucene/lucene-queryparser/5.5.0/lucene-queryparser-5.5.0.jar" enabled="true" runInBatchMode="false"/>
20
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/lucene/lucene-core/5.5.0/lucene-core-5.5.0.jar" enabled="true" runInBatchMode="false"/>
21
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/lucene/lucene-queries/5.5.0/lucene-queries-5.5.0.jar" enabled="true" runInBatchMode="false"/>
22
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/lucene/lucene-sandbox/5.5.0/lucene-sandbox-5.5.0.jar" enabled="true" runInBatchMode="false"/>
23
    <factorypathentry kind="VARJAR" id="M2_REPO/org/z3950/zing/cql-java/1.7/cql-java-1.7.jar" enabled="true" runInBatchMode="false"/>
24
    <factorypathentry kind="VARJAR" id="M2_REPO/org/antlr/stringtemplate/3.2/stringtemplate-3.2.jar" enabled="true" runInBatchMode="false"/>
25
    <factorypathentry kind="VARJAR" id="M2_REPO/org/antlr/antlr/2.7.7/antlr-2.7.7.jar" enabled="true" runInBatchMode="false"/>
26
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/commons/commons-lang3/3.4/commons-lang3-3.4.jar" enabled="true" runInBatchMode="false"/>
27
    <factorypathentry kind="VARJAR" id="M2_REPO/commons-io/commons-io/2.4/commons-io-2.4.jar" enabled="true" runInBatchMode="false"/>
28
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/httpcomponents/httpclient/4.4.1/httpclient-4.4.1.jar" enabled="true" runInBatchMode="false"/>
29
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/httpcomponents/httpcore/4.4.1/httpcore-4.4.1.jar" enabled="true" runInBatchMode="false"/>
30
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/cxf/cxf-core/3.1.5/cxf-core-3.1.5.jar" enabled="true" runInBatchMode="false"/>
31
    <factorypathentry kind="VARJAR" id="M2_REPO/org/codehaus/woodstox/woodstox-core-asl/4.4.1/woodstox-core-asl-4.4.1.jar" enabled="true" runInBatchMode="false"/>
32
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/ws/xmlschema/xmlschema-core/2.2.1/xmlschema-core-2.2.1.jar" enabled="true" runInBatchMode="false"/>
33
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/cxf/cxf-rt-frontend-jaxws/3.1.5/cxf-rt-frontend-jaxws-3.1.5.jar" enabled="true" runInBatchMode="false"/>
34
    <factorypathentry kind="VARJAR" id="M2_REPO/xml-resolver/xml-resolver/1.2/xml-resolver-1.2.jar" enabled="true" runInBatchMode="false"/>
35
    <factorypathentry kind="VARJAR" id="M2_REPO/org/ow2/asm/asm/5.0.4/asm-5.0.4.jar" enabled="true" runInBatchMode="false"/>
36
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/cxf/cxf-rt-bindings-soap/3.1.5/cxf-rt-bindings-soap-3.1.5.jar" enabled="true" runInBatchMode="false"/>
37
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/cxf/cxf-rt-wsdl/3.1.5/cxf-rt-wsdl-3.1.5.jar" enabled="true" runInBatchMode="false"/>
38
    <factorypathentry kind="VARJAR" id="M2_REPO/wsdl4j/wsdl4j/1.6.3/wsdl4j-1.6.3.jar" enabled="true" runInBatchMode="false"/>
39
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/cxf/cxf-rt-databinding-jaxb/3.1.5/cxf-rt-databinding-jaxb-3.1.5.jar" enabled="true" runInBatchMode="false"/>
40
    <factorypathentry kind="VARJAR" id="M2_REPO/com/sun/xml/bind/jaxb-impl/2.2.11/jaxb-impl-2.2.11.jar" enabled="true" runInBatchMode="false"/>
41
    <factorypathentry kind="VARJAR" id="M2_REPO/com/sun/xml/bind/jaxb-core/2.2.11/jaxb-core-2.2.11.jar" enabled="true" runInBatchMode="false"/>
42
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/cxf/cxf-rt-bindings-xml/3.1.5/cxf-rt-bindings-xml-3.1.5.jar" enabled="true" runInBatchMode="false"/>
43
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/cxf/cxf-rt-frontend-simple/3.1.5/cxf-rt-frontend-simple-3.1.5.jar" enabled="true" runInBatchMode="false"/>
44
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/cxf/cxf-rt-ws-addr/3.1.5/cxf-rt-ws-addr-3.1.5.jar" enabled="true" runInBatchMode="false"/>
45
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/cxf/cxf-rt-ws-policy/3.1.5/cxf-rt-ws-policy-3.1.5.jar" enabled="true" runInBatchMode="false"/>
46
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/neethi/neethi/3.0.3/neethi-3.0.3.jar" enabled="true" runInBatchMode="false"/>
47
    <factorypathentry kind="VARJAR" id="M2_REPO/commons-codec/commons-codec/1.8/commons-codec-1.8.jar" enabled="true" runInBatchMode="false"/>
48
    <factorypathentry kind="VARJAR" id="M2_REPO/saxonica/saxon/9.1.0.8/saxon-9.1.0.8.jar" enabled="true" runInBatchMode="false"/>
49
    <factorypathentry kind="VARJAR" id="M2_REPO/saxonica/saxon-dom/9.1.0.8/saxon-dom-9.1.0.8.jar" enabled="true" runInBatchMode="false"/>
50
    <factorypathentry kind="VARJAR" id="M2_REPO/jaxen/jaxen/1.1.6/jaxen-1.1.6.jar" enabled="true" runInBatchMode="false"/>
51
    <factorypathentry kind="VARJAR" id="M2_REPO/dom4j/dom4j/1.6.1/dom4j-1.6.1.jar" enabled="true" runInBatchMode="false"/>
52
    <factorypathentry kind="VARJAR" id="M2_REPO/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar" enabled="true" runInBatchMode="false"/>
53
    <factorypathentry kind="VARJAR" id="M2_REPO/com/ximpleware/vtd-xml/2.13.4/vtd-xml-2.13.4.jar" enabled="true" runInBatchMode="false"/>
54
    <factorypathentry kind="VARJAR" id="M2_REPO/com/mycila/xmltool/3.3/xmltool-3.3.jar" enabled="true" runInBatchMode="false"/>
55
    <factorypathentry kind="VARJAR" id="M2_REPO/joda-time/joda-time/2.10.2/joda-time-2.10.2.jar" enabled="true" runInBatchMode="false"/>
56
    <factorypathentry kind="VARJAR" id="M2_REPO/org/springframework/spring-test/4.2.5.RELEASE/spring-test-4.2.5.RELEASE.jar" enabled="true" runInBatchMode="false"/>
57
    <factorypathentry kind="VARJAR" id="M2_REPO/commons-net/commons-net/3.3/commons-net-3.3.jar" enabled="true" runInBatchMode="false"/>
58
    <factorypathentry kind="VARJAR" id="M2_REPO/com/jcraft/jsch/0.1.53/jsch-0.1.53.jar" enabled="true" runInBatchMode="false"/>
59
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/commons/commons-csv/1.0/commons-csv-1.0.jar" enabled="true" runInBatchMode="false"/>
60
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/commons/commons-compress/1.6/commons-compress-1.6.jar" enabled="true" runInBatchMode="false"/>
61
    <factorypathentry kind="VARJAR" id="M2_REPO/org/tukaani/xz/1.4/xz-1.4.jar" enabled="true" runInBatchMode="false"/>
62
    <factorypathentry kind="VARJAR" id="M2_REPO/org/svenson/svenson-json/1.4.0/svenson-json-1.4.0.jar" enabled="true" runInBatchMode="false"/>
63
    <factorypathentry kind="VARJAR" id="M2_REPO/com/sun/xsom/xsom/20110809/xsom-20110809.jar" enabled="true" runInBatchMode="false"/>
64
    <factorypathentry kind="VARJAR" id="M2_REPO/relaxngDatatype/relaxngDatatype/20020414/relaxngDatatype-20020414.jar" enabled="true" runInBatchMode="false"/>
65
    <factorypathentry kind="VARJAR" id="M2_REPO/oro/oro/2.0.8/oro-2.0.8.jar" enabled="true" runInBatchMode="false"/>
66
    <factorypathentry kind="VARJAR" id="M2_REPO/eu/dnetlib/dnet-modular-uis/1.0.0-SNAPSHOT/dnet-modular-uis-1.0.0-SNAPSHOT.jar" enabled="true" runInBatchMode="false"/>
67
    <factorypathentry kind="VARJAR" id="M2_REPO/eu/dnetlib/dnet-information-service/1.0.0-SNAPSHOT/dnet-information-service-1.0.0-SNAPSHOT.jar" enabled="true" runInBatchMode="false"/>
68
    <factorypathentry kind="VARJAR" id="M2_REPO/org/exist-db/exist-core/3.0.RC1/exist-core-3.0.RC1.jar" enabled="true" runInBatchMode="false"/>
69
    <factorypathentry kind="VARJAR" id="M2_REPO/com/fasterxml/jackson/core/jackson-core/2.5.0/jackson-core-2.5.0.jar" enabled="true" runInBatchMode="false"/>
70
    <factorypathentry kind="VARJAR" id="M2_REPO/com/github/krukow/clj-ds/0.0.4/clj-ds-0.0.4.jar" enabled="true" runInBatchMode="false"/>
71
    <factorypathentry kind="VARJAR" id="M2_REPO/com/siemens/ct/exi/exificient/0.9.3/exificient-0.9.3.jar" enabled="true" runInBatchMode="false"/>
72
    <factorypathentry kind="VARJAR" id="M2_REPO/org/exist-db/thirdparty/net/sf/sunxacml/sunxacml/1.2/sunxacml-1.2.jar" enabled="true" runInBatchMode="false"/>
73
    <factorypathentry kind="VARJAR" id="M2_REPO/com/thaiopensource/jing/20091111/jing-20091111.jar" enabled="true" runInBatchMode="false"/>
74
    <factorypathentry kind="VARJAR" id="M2_REPO/isorelax/isorelax/20030108/isorelax-20030108.jar" enabled="true" runInBatchMode="false"/>
75
    <factorypathentry kind="VARJAR" id="M2_REPO/org/gnu/gnu-crypto/2.0.1/gnu-crypto-2.0.1.jar" enabled="true" runInBatchMode="false"/>
76
    <factorypathentry kind="VARJAR" id="M2_REPO/org/exist-db/thirdparty/javax/xml/xquery/xqjapi/1.0-fr/xqjapi-1.0-fr.jar" enabled="true" runInBatchMode="false"/>
77
    <factorypathentry kind="VARJAR" id="M2_REPO/jline/jline/0.9.94/jline-0.9.94.jar" enabled="true" runInBatchMode="false"/>
78
    <factorypathentry kind="VARJAR" id="M2_REPO/cglib/cglib/2.2.2/cglib-2.2.2.jar" enabled="true" runInBatchMode="false"/>
79
    <factorypathentry kind="VARJAR" id="M2_REPO/excalibur-cli/excalibur-cli/1.0/excalibur-cli-1.0.jar" enabled="true" runInBatchMode="false"/>
80
    <factorypathentry kind="VARJAR" id="M2_REPO/commons-pool/commons-pool/1.6/commons-pool-1.6.jar" enabled="true" runInBatchMode="false"/>
81
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/logging/log4j/log4j-api/2.3/log4j-api-2.3.jar" enabled="true" runInBatchMode="false"/>
82
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/logging/log4j/log4j-core/2.3/log4j-core-2.3.jar" enabled="true" runInBatchMode="false"/>
83
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/logging/log4j/log4j-jul/2.3/log4j-jul-2.3.jar" enabled="true" runInBatchMode="false"/>
84
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/logging/log4j/log4j-slf4j-impl/2.3/log4j-slf4j-impl-2.3.jar" enabled="true" runInBatchMode="false"/>
85
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/ant/ant/1.9.4/ant-1.9.4.jar" enabled="true" runInBatchMode="false"/>
86
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/ant/ant-launcher/1.9.4/ant-launcher-1.9.4.jar" enabled="true" runInBatchMode="false"/>
87
    <factorypathentry kind="VARJAR" id="M2_REPO/xerces/xercesImpl/2.11.0/xercesImpl-2.11.0.jar" enabled="true" runInBatchMode="false"/>
88
    <factorypathentry kind="VARJAR" id="M2_REPO/xalan/xalan/2.7.2/xalan-2.7.2.jar" enabled="true" runInBatchMode="false"/>
89
    <factorypathentry kind="VARJAR" id="M2_REPO/xalan/serializer/2.7.2/serializer-2.7.2.jar" enabled="true" runInBatchMode="false"/>
90
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/xmlrpc/xmlrpc-common/3.1.3/xmlrpc-common-3.1.3.jar" enabled="true" runInBatchMode="false"/>
91
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/ws/commons/util/ws-commons-util/1.0.2/ws-commons-util-1.0.2.jar" enabled="true" runInBatchMode="false"/>
92
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/xmlrpc/xmlrpc-client/3.1.3/xmlrpc-client-3.1.3.jar" enabled="true" runInBatchMode="false"/>
93
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/xmlrpc/xmlrpc-server/3.1.3/xmlrpc-server-3.1.3.jar" enabled="true" runInBatchMode="false"/>
94
    <factorypathentry kind="VARJAR" id="M2_REPO/org/exist-db/thirdparty/org/expath/pkg-repo/0.6.0-patched/pkg-repo-0.6.0-patched.jar" enabled="true" runInBatchMode="false"/>
95
    <factorypathentry kind="VARJAR" id="M2_REPO/com/fifesoft/rsyntaxtextarea/2.5.6/rsyntaxtextarea-2.5.6.jar" enabled="true" runInBatchMode="false"/>
96
    <factorypathentry kind="VARJAR" id="M2_REPO/org/exist-db/thirdparty/org/xmldb/xmldb-api/1.0-patched/xmldb-api-1.0-patched.jar" enabled="true" runInBatchMode="false"/>
97
    <factorypathentry kind="VARJAR" id="M2_REPO/org/exist-db/exist-start/3.0.RC1/exist-start-3.0.RC1.jar" enabled="true" runInBatchMode="false"/>
98
    <factorypathentry kind="VARJAR" id="M2_REPO/org/aspectj/aspectjrt/1.8.9/aspectjrt-1.8.9.jar" enabled="true" runInBatchMode="false"/>
99
    <factorypathentry kind="VARJAR" id="M2_REPO/org/springframework/spring-jdbc/4.2.5.RELEASE/spring-jdbc-4.2.5.RELEASE.jar" enabled="true" runInBatchMode="false"/>
100
    <factorypathentry kind="VARJAR" id="M2_REPO/org/springframework/spring-tx/4.2.5.RELEASE/spring-tx-4.2.5.RELEASE.jar" enabled="true" runInBatchMode="false"/>
101
    <factorypathentry kind="VARJAR" id="M2_REPO/org/springframework/spring-orm/4.2.5.RELEASE/spring-orm-4.2.5.RELEASE.jar" enabled="true" runInBatchMode="false"/>
102
    <factorypathentry kind="VARJAR" id="M2_REPO/org/postgresql/jdbc4driver/8.3/jdbc4driver-8.3.jar" enabled="true" runInBatchMode="false"/>
103
    <factorypathentry kind="VARJAR" id="M2_REPO/org/xerial/sqlite-jdbc/3.8.11.2/sqlite-jdbc-3.8.11.2.jar" enabled="true" runInBatchMode="false"/>
104
    <factorypathentry kind="VARJAR" id="M2_REPO/org/hibernate/hibernate-entitymanager/5.0.8.Final/hibernate-entitymanager-5.0.8.Final.jar" enabled="true" runInBatchMode="false"/>
105
    <factorypathentry kind="VARJAR" id="M2_REPO/org/jboss/logging/jboss-logging/3.3.0.Final/jboss-logging-3.3.0.Final.jar" enabled="true" runInBatchMode="false"/>
106
    <factorypathentry kind="VARJAR" id="M2_REPO/org/hibernate/hibernate-core/5.0.8.Final/hibernate-core-5.0.8.Final.jar" enabled="true" runInBatchMode="false"/>
107
    <factorypathentry kind="VARJAR" id="M2_REPO/org/jboss/jandex/2.0.0.Final/jandex-2.0.0.Final.jar" enabled="true" runInBatchMode="false"/>
108
    <factorypathentry kind="VARJAR" id="M2_REPO/org/hibernate/common/hibernate-commons-annotations/5.0.1.Final/hibernate-commons-annotations-5.0.1.Final.jar" enabled="true" runInBatchMode="false"/>
109
    <factorypathentry kind="VARJAR" id="M2_REPO/org/hibernate/javax/persistence/hibernate-jpa-2.1-api/1.0.0.Final/hibernate-jpa-2.1-api-1.0.0.Final.jar" enabled="true" runInBatchMode="false"/>
110
    <factorypathentry kind="VARJAR" id="M2_REPO/org/javassist/javassist/3.18.1-GA/javassist-3.18.1-GA.jar" enabled="true" runInBatchMode="false"/>
111
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/geronimo/specs/geronimo-jta_1.1_spec/1.1.1/geronimo-jta_1.1_spec-1.1.1.jar" enabled="true" runInBatchMode="false"/>
112
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/commons/commons-dbcp2/2.1.1/commons-dbcp2-2.1.1.jar" enabled="true" runInBatchMode="false"/>
113
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/commons/commons-pool2/2.4.2/commons-pool2-2.4.2.jar" enabled="true" runInBatchMode="false"/>
114
    <factorypathentry kind="VARJAR" id="M2_REPO/commons-beanutils/commons-beanutils/1.8.3/commons-beanutils-1.8.3.jar" enabled="true" runInBatchMode="false"/>
115
    <factorypathentry kind="VARJAR" id="M2_REPO/org/springframework/spring-web/4.2.5.RELEASE/spring-web-4.2.5.RELEASE.jar" enabled="true" runInBatchMode="false"/>
116
    <factorypathentry kind="VARJAR" id="M2_REPO/org/springframework/spring-aop/4.2.5.RELEASE/spring-aop-4.2.5.RELEASE.jar" enabled="true" runInBatchMode="false"/>
117
    <factorypathentry kind="VARJAR" id="M2_REPO/aopalliance/aopalliance/1.0/aopalliance-1.0.jar" enabled="true" runInBatchMode="false"/>
118
    <factorypathentry kind="VARJAR" id="M2_REPO/org/springframework/spring-core/4.2.5.RELEASE/spring-core-4.2.5.RELEASE.jar" enabled="true" runInBatchMode="false"/>
119
    <factorypathentry kind="VARJAR" id="M2_REPO/org/springframework/spring-webmvc/4.2.5.RELEASE/spring-webmvc-4.2.5.RELEASE.jar" enabled="true" runInBatchMode="false"/>
120
    <factorypathentry kind="VARJAR" id="M2_REPO/org/springframework/spring-expression/4.2.5.RELEASE/spring-expression-4.2.5.RELEASE.jar" enabled="true" runInBatchMode="false"/>
121
    <factorypathentry kind="VARJAR" id="M2_REPO/org/codehaus/jackson/jackson-mapper-asl/1.9.13/jackson-mapper-asl-1.9.13.jar" enabled="true" runInBatchMode="false"/>
122
    <factorypathentry kind="VARJAR" id="M2_REPO/org/codehaus/jackson/jackson-core-asl/1.9.13/jackson-core-asl-1.9.13.jar" enabled="true" runInBatchMode="false"/>
123
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/maven/maven-model/3.2.3/maven-model-3.2.3.jar" enabled="true" runInBatchMode="false"/>
124
    <factorypathentry kind="VARJAR" id="M2_REPO/org/codehaus/plexus/plexus-utils/3.0.17/plexus-utils-3.0.17.jar" enabled="true" runInBatchMode="false"/>
125
    <factorypathentry kind="VARJAR" id="M2_REPO/eu/dnetlib/dnet-data-provision-services/1.0.0-SNAPSHOT/dnet-data-provision-services-1.0.0-SNAPSHOT.jar" enabled="true" runInBatchMode="false"/>
126
    <factorypathentry kind="VARJAR" id="M2_REPO/org/scala-lang/scala-library/2.9.2/scala-library-2.9.2.jar" enabled="true" runInBatchMode="false"/>
127
    <factorypathentry kind="VARJAR" id="M2_REPO/com/typesafe/akka/akka-actor/2.0.4/akka-actor-2.0.4.jar" enabled="true" runInBatchMode="false"/>
128
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/solr/solr-solrj/5.5.0/solr-solrj-5.5.0.jar" enabled="true" runInBatchMode="false"/>
129
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/httpcomponents/httpmime/4.4.1/httpmime-4.4.1.jar" enabled="true" runInBatchMode="false"/>
130
    <factorypathentry kind="VARJAR" id="M2_REPO/org/apache/zookeeper/zookeeper/3.4.6/zookeeper-3.4.6.jar" enabled="true" runInBatchMode="false"/>
131
    <factorypathentry kind="VARJAR" id="M2_REPO/org/codehaus/woodstox/stax2-api/3.1.4/stax2-api-3.1.4.jar" enabled="true" runInBatchMode="false"/>
132
    <factorypathentry kind="VARJAR" id="M2_REPO/org/noggit/noggit/0.6/noggit-0.6.jar" enabled="true" runInBatchMode="false"/>
133
    <factorypathentry kind="VARJAR" id="M2_REPO/commons-httpclient/commons-httpclient/3.1/commons-httpclient-3.1.jar" enabled="true" runInBatchMode="false"/>
134
    <factorypathentry kind="VARJAR" id="M2_REPO/commons-logging/commons-logging/1.0.4/commons-logging-1.0.4.jar" enabled="true" runInBatchMode="false"/>
135
    <factorypathentry kind="VARJAR" id="M2_REPO/mysql/mysql-connector-java/5.1.46/mysql-connector-java-5.1.46.jar" enabled="true" runInBatchMode="false"/>
136
    <factorypathentry kind="VARJAR" id="M2_REPO/org/jbibtex/jbibtex/1.0.17/jbibtex-1.0.17.jar" enabled="true" runInBatchMode="false"/>
137
    <factorypathentry kind="VARJAR" id="M2_REPO/javax/servlet/javax.servlet-api/3.1.0/javax.servlet-api-3.1.0.jar" enabled="true" runInBatchMode="false"/>
138
    <factorypathentry kind="VARJAR" id="M2_REPO/log4j/log4j/1.2.17/log4j-1.2.17.jar" enabled="true" runInBatchMode="false"/>
139
</factorypath>
modules/dnet-isti/branches/OpenaireAccessToken/deploy.info
1
{
2
		"type_source": "SVN",
3
		"goal": "package -U source:jar",
4
		"url": "http://svn-public.driver.research-infrastructures.eu/driver/dnet50/modules/dnet-isti/trunk/",
5
		"deploy_repository": "dnet5-snapshots",
6
		"version": "5",
7
		"mail": "sandro.labruzzo@isti.cnr.it,michele.artini@isti.cnr.it, claudio.atzori@isti.cnr.it, alessia.bardi@isti.cnr.it",
8
		"deploy_repository_url": "http://maven.research-infrastructures.eu/nexus/content/repositories/dnet5-snapshots",
9
		"name": "dnet-isti"
10
}
modules/dnet-isti/branches/OpenaireAccessToken/src/test/java/eu/dnetlib/isti/transform/TransformTest.java
1
package eu.dnetlib.isti.transform;
2

  
3
import static org.junit.Assert.assertEquals;
4

  
5
import java.io.InputStream;
6
import java.io.StringReader;
7
import java.io.StringWriter;
8
import java.io.UnsupportedEncodingException;
9
import java.net.URLDecoder;
10

  
11
import javax.xml.transform.OutputKeys;
12
import javax.xml.transform.Transformer;
13
import javax.xml.transform.TransformerFactory;
14
import javax.xml.transform.stream.StreamResult;
15
import javax.xml.transform.stream.StreamSource;
16

  
17
import org.dom4j.io.SAXReader;
18
import org.junit.Ignore;
19
import org.junit.Test;
20

  
21
import eu.dnetlib.data.utils.XsltFunctions;
22

  
23
/**
24
 * Created by sandro on 9/30/16.
25
 */
26
public class TransformTest {
27

  
28
	@Test
29
	@Ignore
30
	public void transformPeopleTest() throws Exception {
31
		final InputStream xsltAsStream =
32
				this.getClass().getResourceAsStream("/eu/dnetlib/bootstrap/profiles/TransformationRuleDSResources/people2dataciteTransform.xml");
33

  
34
		final String code = new SAXReader().read(xsltAsStream).valueOf("//CODE");
35

  
36
		final TransformerFactory factory = TransformerFactory.newInstance();
37
		factory.newTransformer();
38
		final StreamSource xsltSource = new StreamSource(new StringReader(code));
39
		final InputStream recordStream = this.getClass().getResourceAsStream("inputPeople.xml");
40
		final Transformer transformer = factory.newTransformer(xsltSource);
41
		transformer.setOutputProperty(OutputKeys.INDENT, "yes");
42
		final StringWriter output = new StringWriter();
43
		transformer.transform(new StreamSource(recordStream), new StreamResult(output));
44
		final String record = output.toString();
45

  
46
		// System.out.println("record = " + record);
47

  
48
		System.out.println("name :" + XsltFunctions.cleanNames("(eds.)"));
49

  
50
	}
51

  
52
	@Test
53
	@Ignore
54
	public void test() throws UnsupportedEncodingException {
55
		final String s2 = "https://issue.openaire.research-infrastructures.eu/projects/openaire2020- wiki/wiki/D81_OpenAIRE_Data_Model_Specification";
56
		final String s1 = "https://issue.openaire.research-infrastructures.eu/projects/openaire2020-%20wiki/wiki/D81_OpenAIRE_Data_Model_Specification";
57

  
58
		assertEquals(URLDecoder.decode(s1, "UTF-8"), URLDecoder.decode(s2, "UTF-8"));
59

  
60
	}
61

  
62
}
modules/dnet-isti/branches/OpenaireAccessToken/src/test/java/eu/dnetlib/data/utils/BibTexConverterTest.java
1
package eu.dnetlib.data.utils;
2

  
3
import java.io.IOException;
4

  
5
import javax.xml.bind.JAXBException;
6

  
7
import org.apache.commons.io.IOUtils;
8
import org.junit.Ignore;
9
import org.junit.Test;
10

  
11
import com.google.gson.JsonSyntaxException;
12

  
13
import eu.dnetlib.data.mdstore.plugins.objects.MdRecord;
14
import eu.dnetlib.data.mdstore.plugins.objects.MdRecordConvertUtils;
15

  
16
public class BibTexConverterTest {
17

  
18
	@Test
19
	@Ignore
20
	public void testAsBibTex_1() {
21

  
22
		final MdRecord record = new MdRecord();
23

  
24
		record.setId("1234");
25
		record.setTitle("The D-NET software toolkit A framework for the realization, maintenance, and operation of aggregative infrastructures");
26

  
27
		record.getCreators().add("Manghi P.");
28
		record.getCreators().add("Artini M.");
29

  
30
		record.setPublisher("Emerald, Bradford, Regno Unito");
31
		record.getDois().add("10.1108/PROG-08-2013-0045");
32
		record.setDate(2014);
33
		record.setSource("Program (Lond., 1966) 48 (2014): 322–354. doi:10.1108/PROG-08-2013-0045");
34
		record.setType("Article");
35

  
36
		final String bib = BibTexConverter.asBibTex(record);
37

  
38
		System.out.println(bib);
39

  
40
	}
41

  
42
	@Test
43
	@Ignore
44
	public void testAsBibTex_article_source_1() {
45

  
46
		final MdRecord record = new MdRecord();
47

  
48
		record.setId("1234");
49
		record.setType("Article");
50

  
51
		record.setSource("Internet of Things 13 (2020): 1–14");
52

  
53
		final String bib = BibTexConverter.asBibTex(record);
54

  
55
		System.out.println(bib);
56

  
57
	}
58

  
59
	@Test
60
	public void testAsBibTex_file() throws JsonSyntaxException, IOException, JAXBException {
61

  
62
		final String xml = IOUtils.toString(getClass().getResourceAsStream("record.xml"));
63

  
64
		final MdRecord record = MdRecordConvertUtils.fromString(xml);
65

  
66
		final String bib = BibTexConverter.asBibTex(record);
67

  
68
		System.out.println(bib);
69

  
70
	}
71
}
modules/dnet-isti/branches/OpenaireAccessToken/src/test/java/eu/dnetlib/data/mdstore/plugins/SimpleTest.java
1
package eu.dnetlib.data.mdstore.plugins;
2

  
3
import java.util.Arrays;
4

  
5
import org.junit.Test;
6

  
7
public class SimpleTest {
8

  
9
	@Test
10
	public void testComparator() {
11

  
12
		Arrays.asList("Restricted", "Open Access", "Restricted", "Open Access", "UNKNOWN", "UNKNOWN", "UNKNOWN", "Open Access", "Restricted", "Open Access")
13
				.stream()
14
				.sorted((o1, o2) -> {
15
					final int n1 = o1.equalsIgnoreCase("Open Access") ? 0 : o1.equalsIgnoreCase("UNKNOWN") ? 2 : 1;
16
					final int n2 = o2.equalsIgnoreCase("Open Access") ? 0 : o2.equalsIgnoreCase("UNKNOWN") ? 2 : 1;
17
					return Integer.compare(n1, n2);
18
				})
19
				.forEach(System.out::println);
20
	}
21

  
22
	@Test
23
	public void testSubject() {
24
		System.out.println(EnrichOpenairePlugin.cleanSubject("info:eu-repo/classification/msc/68P20"));
25
		System.out.println(EnrichOpenairePlugin.cleanSubject("info:eu-repo/classification/acm/D.2 SOFTWARE ENGINEERING"));
26
		System.out.println(EnrichOpenairePlugin.cleanSubject("info:eu-repo/classification/acm/H.3.7 Digital Libraries"));
27
		System.out.println(EnrichOpenairePlugin.cleanSubject("[INFO.INFO-SE] Computer Science [cs]/Software Engineering [cs.SE]"));
28

  
29
	}
30
}
modules/dnet-isti/branches/OpenaireAccessToken/src/test/java/eu/dnetlib/data/mdstore/plugins/objects/MdRecordConvertUtilsTest.java
1
package eu.dnetlib.data.mdstore.plugins.objects;
2

  
3
import java.io.IOException;
4

  
5
import javax.xml.bind.JAXBException;
6

  
7
import org.apache.commons.io.IOUtils;
8
import org.junit.Test;
9

  
10
public class MdRecordConvertUtilsTest {
11

  
12
	@Test
13
	public void test() throws JAXBException, IOException {
14
		final MdRecord r = MdRecordConvertUtils.fromString(IOUtils.toString(getClass().getResourceAsStream("testRecord.xml")));
15

  
16
		System.out.println("URLS: " + r.getUrls().size());
17

  
18
		// r.getUrls().add(new MyURL("https://openportal.isti.cnr.it/articles/dependable_dynamic_routing_post_print.pdf", "Direct link
19
		// (PDF)", "Open Access"));
20

  
21
		System.out.println(MdRecordConvertUtils.toString(r));
22
	}
23

  
24
}
modules/dnet-isti/branches/OpenaireAccessToken/src/test/java/eu/dnetlib/data/mdstore/plugins/objects/ProjectTest.java
1
package eu.dnetlib.data.mdstore.plugins.objects;
2

  
3
import static org.junit.Assert.assertEquals;
4
import static org.junit.Assert.assertNotNull;
5

  
6
import java.util.Set;
7
import java.util.TreeSet;
8

  
9
import org.junit.Test;
10

  
11
public class ProjectTest {
12

  
13
	@Test
14
	public void testNewInstanceString_1() {
15
		final Project p = Project.newInstance(
16
				"info:eu-repo/grantAgreement/EC/FP7/231167//Emergent Connectors for Eternal Software Intensive Networked Systems/CONNECT");
17
		assertNotNull(p);
18
		assertEquals(p.getFunder(), "EC");
19
		assertEquals(p.getProgram(), "FP7");
20
		assertEquals(p.getCode(), "231167");
21
		assertEquals(p.getJurisdiction(), "");
22
		assertEquals(p.getName(), "Emergent Connectors for Eternal Software Intensive Networked Systems");
23
		assertEquals(p.getAcronym(), "CONNECT");
24
		assertEquals(p.getOpenaireId(), "");
25
	}
26

  
27
	@Test
28
	public void testNewInstanceString_2() {
29
		final Project p = Project.newInstance(
30
				"info:eu-repo/grantAgreement/EC/FP7/231167/EU/Emergent Connectors for Eternal Software Intensive Networked Systems/CONNECT");
31
		assertNotNull(p);
32
		assertEquals(p.getFunder(), "EC");
33
		assertEquals(p.getProgram(), "FP7");
34
		assertEquals(p.getCode(), "231167");
35
		assertEquals(p.getJurisdiction(), "EU");
36
		assertEquals(p.getName(), "Emergent Connectors for Eternal Software Intensive Networked Systems");
37
		assertEquals(p.getAcronym(), "CONNECT");
38
		assertEquals(p.getOpenaireId(), "");
39
	}
40

  
41
	@Test
42
	public void testNewInstanceString_3() {
43
		final Project p = Project.newInstance(
44
				"info:eu-repo/grantAgreement/EC/FP4/FMBI983160//Algorithms for analysis of cosmic microwave background data from the very small array and the Planck surveyor satellite/");
45
		System.out.println(p);
46
		assertNotNull(p);
47
	}
48

  
49
	@Test
50
	public void test_1() {
51
		final Project pr1 = new Project();
52
		pr1.setName("1");
53
		final Project pr2 = new Project();
54
		pr2.setName("2");
55

  
56
		final Set<Project> projects = new TreeSet<>((p1, p2) -> p1.getName().compareTo(p2.getName()));
57

  
58
		projects.add(pr1);
59
		projects.add(pr2);
60

  
61
		assertEquals(2, projects.size());
62
	}
63

  
64
}
modules/dnet-isti/branches/OpenaireAccessToken/src/test/resources/META-INF/services/javax.xml.transform.TransformerFactory
1
net.sf.saxon.TransformerFactoryImpl
modules/dnet-isti/branches/OpenaireAccessToken/src/test/resources/eu/dnetlib/isti/transform/inputPeople.xml
1
<?xml version="1.0" encoding="UTF-8"?>
2
<oai:record xmlns:oai="http://www.openarchives.org/OAI/2.0/"
3
            xmlns:dri="http://www.driver-repository.eu/namespace/dri"
4
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
5
	<oai:header>
6
        <dri:objIdentifier>people______::074af32df510c6f24c1c3226bf6feac6</dri:objIdentifier>
7
        <dri:recordIdentifier>oai:it.cnr:prodotti:91264</dri:recordIdentifier>
8
        <dri:dateOfCollection>2016-11-28T10:53:16.414+01:00</dri:dateOfCollection>
9
        <dri:repositoryId>
10
            807f0d50-2dc9-447d-8914-b91c34cb5841_UmVwb3NpdG9yeVNlcnZpY2VSZXNvdXJjZXMvUmVwb3NpdG9yeVNlcnZpY2VSZXNvdXJjZVR5cGU=
11
        </dri:repositoryId>
12
		<dri:datasourceprefix>people______</dri:datasourceprefix>
13
        <identifier xmlns="http://www.openarchives.org/OAI/2.0/">oai:it.cnr:prodotti:91264</identifier>
14
        <datestamp xmlns="http://www.openarchives.org/OAI/2.0/">2012-04-26T14:38:13Z</datestamp>
15
		<setSpec xmlns="http://www.openarchives.org/OAI/2.0/">openaire</setSpec>
16
		<setSpec xmlns="http://www.openarchives.org/OAI/2.0/">CDS074</setSpec>
17
	</oai:header>
18
	<metadata xmlns="http://www.openarchives.org/OAI/2.0/">
19
		<oai_dc:dc xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/" xmlns:dc="http://purl.org/dc/elements/1.1/"
20
                   xmlns=""
21
                   xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/oai_dc/ http://www.openarchives.org/OAI/2.0/oai_dc.xsd">
22
            <dc:type>info:eu-repo/semantics/conferenceObject</dc:type>
23
            <dc:title>Ultralight to heavy long duration balloon development from svalbard, Norway</dc:title>
24
            <dc:creator>(1a,2) Steven E. Petrzen</dc:creator>
25
            <dc:creator>(1) Roberto Ibba</dc:creator>
26
            <dc:creator>Kjell Boen</dc:creator>
27
            <dc:creator>(3) Petter Dragoy</dc:creator>
28
            <dc:creator>(4) Silvia Masi</dc:creator>
29
            <dc:creator>(5) Andrea Cardillo</dc:creator>
30
            <dc:creator>(5) Ivano Musso</dc:creator>
31
            <dc:creator>(1) Domenico Spoto</dc:creator>
32
			<dc:language>eng</dc:language>
33
            <dc:description>ABSTRACT: Science teams world wide have made use of stratospheric research balloons to
34
                conduct experimentation through various disciplines and for as many reasons. High altitude balloons have
35
                been the vehicle to carry on investigations of space, our atmosphere, and our planet. Balloons have
36
                proven to be a cost efficient and rapidly deployable means to gain access to the heavens. In a joint
37
                effort, the Italian Space Agency (ASI) and Andoya Rocket Range (ARR) have initiated the development of a
38
                European balloon center in Svalbard, Norway. This new facility, Nobile / Amundsen Stratospheric Balloon
39
                Center - Svalbard, has arguably the ideal location for performing Long Duration Balloon (LDB) campaigns.
40
            </dc:description>
41
            <dc:source>17th ESA Symposium on European Rocket and Balloon Programmes and Related Research, pp. 403–406,
42
                Sandefjord, Norway, 30 May - 2 June 2005
43
            </dc:source>
44
            <dc:publisher>ESA Publication Division, Noordwijk, NLD</dc:publisher>
45
            <dc:date>2005</dc:date>
46
            <dc:identifier>http://www.cnr.it/prodotto/i/91264</dc:identifier>
47
            <dc:identifier>urn:isbn:92-9092-901-4</dc:identifier>
48
            <dc:relation>info:cnr-pdr/author/matricola:3478/CARDILLO/ANDREA</dc:relation>
49
            <dc:relation>info:cnr-pdr/author/matricola:10508/MUSSO/IVANO</dc:relation>
50
		</oai_dc:dc>
51
	</metadata>
52
	<oai:about>
53
		<provenance xmlns="http://www.openarchives.org/OAI/2.0/provenance"
54
                    xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/provenance http://www.openarchives.org/OAI/2.0/provenance.xsd">
55
            <originDescription xmlns="" altered="true" harvestDate="2016-11-28T10:53:16.414+01:00">
56
				<baseURL>http%3A%2F%2Fwww.cnr.it%2Foai-pmh%2Foai2.php</baseURL>
57
                <identifier>oai:it.cnr:prodotti:91264</identifier>
58
                <datestamp>2012-04-26T14:38:13Z</datestamp>
59
				<metadataNamespace/>
60
			</originDescription>
61
		</provenance>
62
	</oai:about>
63
</oai:record>
modules/dnet-isti/branches/OpenaireAccessToken/src/test/resources/eu/dnetlib/data/utils/record.xml
1
<record>
2
         <identifier>oai:it.cnr:prodotti:68302</identifier>
3
         <title>A prototype lab box with DSK'C6711/13 for rapid DSP algorithm develpment</title>
4
         <creators>
5
            <creator>Bertini G.</creator>
6
            <creator>Magrini M.</creator>
7
         </creators>
8
         <publisher/>
9
         <subjects>
10
            <subject>H 5.5 Sound and Music Computing</subject>
11
            <subject>I 5.4 Applications</subject>
12
         </subjects>
13
         <contributors/>
14
         <date>2005</date>
15
         <language>Undetermined</language>
16
         <type>Article</type>
17
         <urls>
18
            <url hostedBy="CNR ExploRA" rights="Unknown">https://publications.cnr.it/doc/68302</url>
19
         </urls>
20
         <dois/>
21
         <bestRights>Unknown</bestRights>
22
         <abstract>Rapid prototyping is a new approach in Digital Signal Processing systems development. With the advent of Matlab's Real Time Workshop (RTW) it is now possible to compile, load, and execute graphically designed Mathworks Simulink models on an actual DSP platform, without spending many workdays coding in typical DSP-oriented languages, or C/C++ dialects (compilers). RTW supports the powerful Texas Instruments 'C6000 series, including the TMS320C6711 DSK we are employing in our lab. Here we describe our experience in using these tools to develop and test real-time voice transformation algorithms proposed by the Musical and Architectural Acoustic Lab of FSSG-CNR (Fondazione Scuola San Giorgio-Consiglio Nazionale delle Ricerche, Venice, Italy).</abstract>
23
         <projects/>
24
         <cnrPersons/>
25
         <datasets/>
26
         <citations/>
27
         <collections>
28
            <inCollection>
29
               <code>CDS074</code>
30
               <name>Istituto di scienza e tecnologie dell'informazione "Alessandro Faedo"</name>
31
               <acronym>ISTI</acronym>
32
            </inCollection>
33
         </collections>
34
      </record>
modules/dnet-isti/branches/OpenaireAccessToken/src/test/resources/eu/dnetlib/data/mdstore/plugins/objects/testRecord.xml
1

  
2
      <record>
3
         <identifier>oai:it.cnr:prodotti:386219</identifier>
4
         <title>Dependable dynamic routing for urban transport systems through integer linear programming</title>
5
         <creators>
6
            <creator>Basile D.</creator>
7
            <creator>Di Giandomenico F.</creator>
8
            <creator>Gnesi S.</creator>
9
         </creators>
10
         <publisher>Springer, Cham, Heidelberg, New York, Dordrecht, London, CHE</publisher>
11
         <subjects>
12
            <subject>Integer linear programming</subject>
13
            <subject>Railway</subject>
14
            <subject>Light railway</subject>
15
            <subject>Urban transport system</subject>
16
         </subjects>
17
         <contributors/>
18
         <date>2017</date>
19
         <language>English</language>
20
         <type>Conference object</type>
21
         <urls>
22
            <url hostedBy="CNR People" rights="Unknown">http://www.cnr.it/prodotto/i/386219</url>
23
            <url hostedBy="DOI Resolver" rights="Unknown">https://dx.doi.org/10.1007/978-3-319-68499-4</url>
24
            <url hostedBy="doi.org" rights="Unknown">https://doi.org/10.1007/978-3-319-68499-4</url>
25
			<url hostedBy="Direct link (PDF)" rights="Open Access">https://openportal.isti.cnr.it/articles/dependable_dynamic_routing_post_print.pdf</url>
26
         </urls>
27
         <dois>
28
            <doi>10.1007/978-3-319-68499-4</doi>
29
         </dois>
30
         <bestRights>Unknown</bestRights>
31
         <abstract>Highly automated transport systems play an important role in the transformation towards a digital society, and planning the optimal routes for a set of fleet vehicles has been proved useful for improving the delivered services. Traditionally, routes are planned beforehand. However, with the advent of autonomous urban transport systems (e.g. autonomous cars), possible obstructions of tracks due to traffic congestion or bad weather conditions need to be handled on the fly. In this paper we tackle the problem of dynamically computing routes of vehicles in urban lines in the presence of potential obstructions. The problem is formulated as an integer linear optimization problem. The proposed algorithm will assign routes to vehicles dynamically, considering the track segments that are no longer available and the positions of the vehicles in the urban area. The recomputed routes guarantee the minimal waiting time for passengers. Safety of the computed routes is also guaranteed.</abstract>
32
         <source>RSSRail, Pistoia, 11/2017</source>
33
         <projects>
34
            <project>
35
               <infoId>info:eu-repo/grantAgreement/EC/H2020/777561//SAtellite-based Signalling and Automation SysTems on Railways along with Formal Method and Moving Block validation/ASTRail</infoId>
36
               <openaireId/>
37
               <code/>
38
               <name/>
39
               <acronym/>
40
               <funder/>
41
               <program/>
42
               <jurisdiction/>
43
            </project>
44
         </projects>
45
         <cnrPersons>
46
            <cnrPerson>
47
               <infoId>info:cnr-pdr/author/idpersonaleesterno:26168/BASILE/DAVIDE</infoId>
48
               <name>Davide Basile</name>
49
            </cnrPerson>
50
            <cnrPerson>
51
               <infoId>info:cnr-pdr/author/matricola:4873/DI GIANDOMENICO/FELICITA</infoId>
52
               <name>Felicita Di Giandomenico</name>
53
            </cnrPerson>
54
            <cnrPerson>
55
               <infoId>info:cnr-pdr/author/matricola:7405/GNESI/STEFANIA</infoId>
56
               <name>Stefania Gnesi</name>
57
            </cnrPerson>
58
         </cnrPersons>
59
         <citations/>
60
         <collections>
61
            <inCollection>
62
               <code>openaire</code>
63
               <name/>
64
               <acronym/>
65
            </inCollection>
66
            <inCollection>
67
               <code>CDS074</code>
68
               <name/>
69
               <acronym/>
70
            </inCollection>
71
         </collections>
72
      </record>
modules/dnet-isti/branches/OpenaireAccessToken/src/test/resources/eu/dnetlib/data/mdstore/plugins/record.xml
1
<?xml version="1.0" encoding="UTF-8"?>
2
<oai:record xmlns:oai="http://www.openarchives.org/OAI/2.0/"
3
            xmlns:dri="http://www.driver-repository.eu/namespace/dri"
4
            xmlns:isti="http://www.isti.cnr.it/">
5
   <oai:header xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
6
      <dri:objIdentifier>people______::48e01b9ddc8c24c099b14881ccdb55c6</dri:objIdentifier>
7
      <dri:recordIdentifier>oai:it.cnr:prodotti:149512</dri:recordIdentifier>
8
      <dri:dateOfCollection>2017-10-02T11:45:42.551+02:00</dri:dateOfCollection>
9
      <dri:repositoryId>807f0d50-2dc9-447d-8914-b91c34cb5841_UmVwb3NpdG9yeVNlcnZpY2VSZXNvdXJjZXMvUmVwb3NpdG9yeVNlcnZpY2VSZXNvdXJjZVR5cGU=</dri:repositoryId>
10
      <dri:datasourceprefix>people______</dri:datasourceprefix>
11
      <identifier xmlns="http://www.openarchives.org/OAI/2.0/">oai:it.cnr:prodotti:149512</identifier>
12
      <datestamp xmlns="http://www.openarchives.org/OAI/2.0/">2016-07-28T12:45:52Z</datestamp>
13
      <setSpec xmlns="http://www.openarchives.org/OAI/2.0/">openaire</setSpec>
14
      <setSpec xmlns="http://www.openarchives.org/OAI/2.0/">CDS074</setSpec>
15
   </oai:header>
16
   <oai:metadata>
17
      <resource xmlns="http://datacite.org/schema/kernel-3"
18
                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
19
                xsi:schemaLocation="http://datacite.org/schema/kernel-3 http://schema.datacite.org/meta/kernel-3/metadata.xsd">
20
         <identifier xmlns="" identifierType="oai_people">oai:it.cnr:prodotti:149512</identifier>
21
         <creators xmlns="">
22
            <creator>
23
               <creatorName>Donatella Castelli</creatorName>
24
            </creator>
25
            <creator>
26
               <creatorName>Pasquale Pagano</creatorName>
27
            </creator>
28
            <creator>
29
               <creatorName>Federico Biagini</creatorName>
30
            </creator>
31
            <creator>
32
               <creatorName>Michele Artini E Membri Del Siba</creatorName>
33
            </creator>
34
         </creators>
35
         <titles xmlns="">
36
            <title>Biblioteca Digitale del Servizio Bibliotecario dell’Università di Lecce (SIBA)</title>
37
         </titles>
38
         <subjects xmlns=""/>
39
         <contributors xmlns=""/>
40
         <dates xmlns="">
41
            <date dateType="Accepted">2006</date>
42
         </dates>
43
         <resourceType xmlns="" resourceTypeGeneral="Text">Other</resourceType>
44
         <alternateIdentifiers xmlns="">
45
            <alternateIdentifier alternateIdentifierType="url">http://www.cnr.it/prodotto/i/149512</alternateIdentifier>
46
         </alternateIdentifiers>
47
         <relatedIdentifiers xmlns=""/>
48
         <sizes xmlns=""/>
49
         <formats xmlns=""/>
50
         <rightsList xmlns=""/>
51
         <descriptions xmlns="">
52
            <description descriptionType="Abstract">Il progetto nasce con l'obiettivo di realizzare una piattaforma scientifica comune finalizzata alla costituzione della biblioteca digitale del SIBA. Il progetto si articola in due fasi:
53
Progettazione e realizzazione di un primo prototipo della biblioteca digitale capace di integrare, gestire e rendere accessibili, anche in conformità alle raccomandazioni prescritte dall’Open Archives Initiative Protocol for Metadati Harvesting, le collezioni attualmente rese fruibili dal servizio ESE, Editoria Scientifica Elettronica dell'Università di Lecce.
54
Revisione del prototipo realizzato e sua estensione con funzionalità personalizzate per l’anagrafica della ricerca, anche denominata “gestione editoriale”, e per l’integrazione, gestione e fruizione di SINM-MPRESS, Indice Nazionale dei Preprint di Matematica, e di REIM - Riviste Elettroniche Italiane Di Matematica.
55
</description>
56
         </descriptions>
57
         <geoLocations xmlns=""/>
58
         <sources xmlns=""/>
59
         <isti:projects xmlns=""/>
60
         <isti:persons xmlns="">
61
            <isti:person>
62
               <isti:infoId>info:cnr-pdr/author/idpersonaleesterno:136/BIAGINI/FEDERICO</isti:infoId>
63
            </isti:person>
64
            <isti:person>
65
               <isti:infoId>info:cnr-pdr/author/matricola:14242/ARTINI/MICHELE</isti:infoId>
66
            </isti:person>
67
            <isti:person>
68
               <isti:infoId>info:cnr-pdr/author/matricola:29247/CASTELLI/DONATELLA</isti:infoId>
69
            </isti:person>
70
         </isti:persons>
71
      </resource>
72
   </oai:metadata>
73
</oai:record>
74

  
modules/dnet-isti/branches/OpenaireAccessToken/src/test/resources/log4j.properties
1
### Root Level ###
2
log4j.rootLogger=WARN, CONSOLE
3
### Configuration for the CONSOLE appender ###
4
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
5
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
6
log4j.appender.CONSOLE.layout.ConversionPattern=[%-5p] %d %c - %m%n
7
org.apache.cxf.Logger=org.apache.cxf.common.logging.Log4jLogger
8
### Application Level ###
9
log4j.logger.eu.dnetlib=DEBUG
modules/dnet-isti/branches/OpenaireAccessToken/src/main/java/eu/dnetlib/msro/workflows/nodes/PimpaUpdateJobNode.java
1
package eu.dnetlib.msro.workflows.nodes;
2

  
3
import java.util.Calendar;
4
import java.util.Map;
5
import java.util.Set;
6
import java.util.stream.Collectors;
7

  
8
import org.apache.commons.lang3.StringUtils;
9
import org.apache.commons.logging.Log;
10
import org.apache.commons.logging.LogFactory;
11
import org.springframework.beans.factory.annotation.Autowired;
12

  
13
import eu.dnetlib.clients.pimpa.PimpaStubFactory;
14
import eu.dnetlib.data.db.AffiliationsDao;
15
import eu.dnetlib.data.utils.IstiConstants;
16
import eu.dnetlib.data.utils.XsltFunctions;
17
import eu.dnetlib.msro.workflows.graph.Arc;
18
import eu.dnetlib.msro.workflows.procs.Env;
19

  
20
public class PimpaUpdateJobNode extends SimpleJobNode {
21

  
22
	@Autowired
23
	private PimpaStubFactory pimpa;
24

  
25
	@Autowired
26
	private AffiliationsDao dao;
27

  
28
	private boolean overridePersons = false;
29
	private boolean overrideGroups = false;
30
	private boolean capitalizeFullnames = false;
31

  
32
	private static final Log log = LogFactory.getLog(PimpaUpdateJobNode.class);
33

  
34
	@Override
35
	protected String execute(final Env env) throws Exception {
36
		log.info("Reimport records from PIMPA - START");
37

  
38
		final Map<String, Boolean> oldPids = dao.getPersonIds().stream().collect(Collectors.toMap(s -> s, s -> true));
39

  
40
		final Map<String, Boolean> oldGids = dao.getGroupIds().stream().collect(Collectors.toMap(s -> s, s -> true));
41

  
42
		final Set<String> oldAffiliations = dao.listAffiliations().stream()
43
				.map(a -> String.format("%s#%s#%s", a.getPid(), a.getGid(), a.getYear()))
44
				.collect(Collectors.toSet());
45

  
46
		pimpa.getStub()
47
				.getDataRange(IstiConstants.PIMPA_START_YEAR, Calendar.getInstance().get(Calendar.YEAR))
48
				.getYears()
49
				.forEach(y -> {
50
					y.getPersons().getList().forEach(p -> {
51
						if (StringUtils.isNotBlank(p.getCode())) {
52
							final String pid = "matricola:" + p.getCode().trim();
53

  
54
							if (!oldPids.containsKey(pid)) {
55
								dao.registerPerson(pid, String.format("%s %s", p.getName().trim(), p.getSurname().trim()));
56
								oldPids.put(pid, false);
57
							} else if (overridePersons && oldPids.get(pid)) {
58
								log.info("Overriding person " + pid);
59
								dao.updatePerson(pid, String.format("%s %s", p.getName().trim(), p.getSurname().trim()));
60
								oldPids.put(pid, false);
61
							}
62
							p.getLabs().getList().forEach(lab -> {
63
								if (StringUtils.isNotBlank(lab.getCode())) {
64
									if (overrideGroups && oldGids.get(lab.getCode())) {
65
										log.info("Overriding group " + lab.getCode());
66
										dao.updateGroup(lab.getCode(), lab.getDescription(), lab.getType());
67
										oldGids.put(lab.getCode(), false);
68
									}
69

  
70
									if (!oldAffiliations.contains(String.format("%s#%s#%s", pid, lab.getCode(), y.getYear()))) {
71
										dao.registerAffiliation(pid, lab.getCode(), y.getYear());
72
									}
73
								}
74
							});
75
						}
76
					});
77
				});
78

  
79
		if (capitalizeFullnames) {
80
			log.info("Capitalizing person fullnames");
81
			dao.listPersons().forEach(p -> {
82
				dao.updatePerson(p.getId(), XsltFunctions.capitalize(p.getName()));
83
			});;
84
		}
85

  
86
		log.info("Reimport records from PIMPA - END");
87

  
88
		return Arc.DEFAULT_ARC;
89
	}
90

  
91
	public boolean isOverridePersons() {
92
		return overridePersons;
93
	}
94

  
95
	public void setOverridePersons(final boolean overridePersons) {
96
		this.overridePersons = overridePersons;
97
	}
98

  
99
	public boolean isOverrideGroups() {
100
		return overrideGroups;
101
	}
102

  
103
	public void setOverrideGroups(final boolean overrideGroups) {
104
		this.overrideGroups = overrideGroups;
105
	}
106

  
107
	public boolean isCapitalizeFullnames() {
108
		return capitalizeFullnames;
109
	}
110

  
111
	public void setCapitalizeFullnames(final boolean capitalizeFullnames) {
112
		this.capitalizeFullnames = capitalizeFullnames;
113
	}
114
}
modules/dnet-isti/branches/OpenaireAccessToken/src/main/java/eu/dnetlib/clients/pimpa/Year.java
1
package eu.dnetlib.clients.pimpa;
2

  
3
import javax.xml.bind.annotation.XmlAccessType;
4
import javax.xml.bind.annotation.XmlAccessorType;
5
import javax.xml.bind.annotation.XmlElement;
6

  
7
@XmlAccessorType(XmlAccessType.FIELD)
8
public class Year {
9

  
10
	@XmlElement(name = "anno")
11
	private int year;
12

  
13
	@XmlElement(name = "personale")
14
	private PersonList persons;
15

  
16
	public Year() {}
17

  
18
	public Year(final int year, final PersonList persons) {
19
		this.year = year;
20
		this.persons = persons;
21
	}
22

  
23
	public int getYear() {
24
		return year;
25
	}
26

  
27
	public void setYear(final int year) {
28
		this.year = year;
29
	}
30

  
31
	public PersonList getPersons() {
32
		return persons;
33
	}
34

  
35
	public void setPersons(final PersonList persons) {
36
		this.persons = persons;
37
	}
38

  
39
}
modules/dnet-isti/branches/OpenaireAccessToken/src/main/java/eu/dnetlib/clients/pimpa/PersonList.java
1
package eu.dnetlib.clients.pimpa;
2

  
3
import java.util.ArrayList;
4
import java.util.List;
5

  
6
import javax.xml.bind.annotation.XmlAccessType;
7
import javax.xml.bind.annotation.XmlAccessorType;
8
import javax.xml.bind.annotation.XmlElement;
9

  
10
@XmlAccessorType(XmlAccessType.FIELD)
11
public class PersonList {
12

  
13
	@XmlElement(name = "item")
14
	private List<Person> list = new ArrayList<>();
15

  
16
	public PersonList() {}
17

  
18
	public PersonList(final List<Person> list) {
19
		this.list = list;
20
	}
21

  
22
	public List<Person> getList() {
23
		return list;
24
	}
25

  
26
	public void setList(final List<Person> list) {
27
		this.list = list;
28
	}
29

  
30
}
modules/dnet-isti/branches/OpenaireAccessToken/src/main/java/eu/dnetlib/clients/pimpa/DataRange.java
1
package eu.dnetlib.clients.pimpa;
2

  
3
import java.util.ArrayList;
4
import java.util.List;
5

  
6
import javax.xml.bind.annotation.XmlAccessType;
7
import javax.xml.bind.annotation.XmlAccessorType;
8
import javax.xml.bind.annotation.XmlElement;
9
import javax.xml.bind.annotation.XmlRootElement;
10

  
11
@XmlRootElement
12
@XmlAccessorType(XmlAccessType.FIELD)
13
public class DataRange {
14

  
15
	@XmlElement(name = "item")
16
	private List<Year> years = new ArrayList<>();;
17

  
18
	public DataRange() {}
19

  
20
	public DataRange(final List<Year> years) {
21
		this.years = years;
22
	}
23

  
24
	public List<Year> getYears() {
25
		return years;
26
	}
27

  
28
	public void setYears(final List<Year> years) {
29
		this.years = years;
30
	}
31

  
32
}
modules/dnet-isti/branches/OpenaireAccessToken/src/main/java/eu/dnetlib/clients/pimpa/Person.java
1
package eu.dnetlib.clients.pimpa;
2

  
3
import javax.xml.bind.annotation.XmlAccessType;
4
import javax.xml.bind.annotation.XmlAccessorType;
5
import javax.xml.bind.annotation.XmlElement;
6

  
7
@XmlAccessorType(XmlAccessType.FIELD)
8
public class Person {
9

  
10
	@XmlElement(name = "nome")
11
	private String name;
12

  
13
	@XmlElement(name = "cognome")
14
	private String surname;
15

  
16
	@XmlElement(name = "matricola")
17
	private String code;
18

  
19
	@XmlElement(name = "labs")
20
	private LaboratoryList labs;
21

  
22
	public Person() {}
23

  
24
	public Person(final String name, final String surname, final String code, final LaboratoryList labs) {
25
		this.name = name;
26
		this.surname = surname;
27
		this.code = code;
28
		this.labs = labs;
29
	}
30

  
31
	public String getName() {
32
		return name;
33
	}
34

  
35
	public void setName(final String name) {
36
		this.name = name;
37
	}
38

  
39
	public String getSurname() {
40
		return surname;
41
	}
42

  
43
	public void setSurname(final String surname) {
44
		this.surname = surname;
45
	}
46

  
47
	public String getCode() {
48
		return code;
49
	}
50

  
51
	public void setCode(final String code) {
52
		this.code = code;
53
	}
54

  
55
	public LaboratoryList getLabs() {
56
		return labs;
57
	}
58

  
59
	public void setLabs(final LaboratoryList labs) {
60
		this.labs = labs;
61
	}
62

  
63
}
modules/dnet-isti/branches/OpenaireAccessToken/src/main/java/eu/dnetlib/clients/pimpa/PimpaService.java
1
package eu.dnetlib.clients.pimpa;
2

  
3
import javax.jws.WebParam;
4
import javax.jws.WebResult;
5
import javax.jws.WebService;
6

  
7
@WebService(targetNamespace = "urn:xmethods-delayed-quotes")
8
public interface PimpaService {
9

  
10
	@WebResult(name = "Result")
11
	public DataRange getDataRange(@WebParam(name = "dal") int from, @WebParam(name = "al") int to);
12

  
13
	@WebResult(name = "Result")
14
	public PersonLabs getLabs(@WebParam(name = "persona") String id, @WebParam(name = "anno") int year);
15
}
modules/dnet-isti/branches/OpenaireAccessToken/src/main/java/eu/dnetlib/clients/pimpa/PersonLabs.java
1
package eu.dnetlib.clients.pimpa;
2

  
3
import javax.xml.bind.annotation.XmlAccessType;
4
import javax.xml.bind.annotation.XmlAccessorType;
5
import javax.xml.bind.annotation.XmlElement;
6
import javax.xml.bind.annotation.XmlRootElement;
7

  
8
@XmlRootElement
9
@XmlAccessorType(XmlAccessType.FIELD)
10
public class PersonLabs {
11

  
12
	@XmlElement(name = "error")
13
	private String error;
14

  
15
	@XmlElement(name = "result")
16
	private LaboratoryList results;
17

  
18
	public PersonLabs() {}
19

  
20
	public PersonLabs(final String error, final LaboratoryList results) {
21
		this.error = error;
22
		this.results = results;
23
	}
24

  
25
	public String getError() {
26
		return error;
27
	}
28

  
29
	public void setError(final String error) {
30
		this.error = error;
31
	}
32

  
33
	public LaboratoryList getResults() {
34
		return results;
35
	}
36

  
37
	public void setResult(final LaboratoryList results) {
38
		this.results = results;
39
	}
40
}
modules/dnet-isti/branches/OpenaireAccessToken/src/main/java/eu/dnetlib/clients/pimpa/LaboratoryList.java
1
package eu.dnetlib.clients.pimpa;
2

  
3
import java.util.ArrayList;
4
import java.util.List;
5

  
6
import javax.xml.bind.annotation.XmlAccessType;
7
import javax.xml.bind.annotation.XmlAccessorType;
8
import javax.xml.bind.annotation.XmlElement;
9

  
10
@XmlAccessorType(XmlAccessType.FIELD)
11
public class LaboratoryList {
12

  
13
	@XmlElement(name = "item")
14
	private List<Laboratory> list = new ArrayList<>();;
15

  
16
	public LaboratoryList() {}
17

  
18
	public LaboratoryList(final List<Laboratory> list) {
19
		this.list = list;
20
	}
21

  
22
	public List<Laboratory> getList() {
23
		return list;
24
	}
25

  
26
	public void setList(final List<Laboratory> list) {
27
		this.list = list;
28
	}
29

  
30
}
modules/dnet-isti/branches/OpenaireAccessToken/src/main/java/eu/dnetlib/clients/pimpa/PimpaStubFactory.java
1
package eu.dnetlib.clients.pimpa;
2

  
3
import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
4
import org.springframework.beans.factory.annotation.Required;
5

  
6
public class PimpaStubFactory {
7

  
8
	private String serviceUrl;
9

  
10
	public PimpaService getStub() {
11
		final JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
12
		factory.setServiceClass(PimpaService.class);
13
		factory.setAddress(serviceUrl);
14
		return (PimpaService) factory.create();
15
	}
16

  
17
	public String getServiceUrl() {
18
		return serviceUrl;
19
	}
20

  
21
	@Required
22
	public void setServiceUrl(final String serviceUrl) {
23
		this.serviceUrl = serviceUrl;
24
	}
25
}
modules/dnet-isti/branches/OpenaireAccessToken/src/main/java/eu/dnetlib/clients/pimpa/Laboratory.java
1
package eu.dnetlib.clients.pimpa;
2

  
3
import javax.xml.bind.annotation.XmlAccessType;
4
import javax.xml.bind.annotation.XmlAccessorType;
5
import javax.xml.bind.annotation.XmlElement;
6

  
7
@XmlAccessorType(XmlAccessType.FIELD)
8
public class Laboratory {
9

  
10
	@XmlElement(name = "sigla")
11
	private String code;
12

  
13
	@XmlElement(name = "descrizione")
14
	private String description;
15

  
16
	@XmlElement(name = "tipo")
17
	private String type;
18

  
19
	public Laboratory() {}
20

  
21
	public Laboratory(final String code, final String description, final String type) {
22
		this.code = code;
23
		this.description = description;
24
		this.type = type;
25
	}
26

  
27
	public String getCode() {
28
		return code;
29
	}
30

  
31
	public void setCode(final String code) {
32
		this.code = code;
33
	}
34

  
35
	public String getDescription() {
36
		return description;
37
	}
38

  
39
	public void setDescription(final String description) {
40
		this.description = description;
41
	}
42

  
43
	public String getType() {
44
		return type;
45
	}
46

  
47
	public void setType(final String type) {
48
		this.type = type;
49
	}
50

  
51
}
modules/dnet-isti/branches/OpenaireAccessToken/src/main/java/eu/dnetlib/data/utils/HttpFetcher.java
1
package eu.dnetlib.data.utils;
2

  
3
import java.net.URI;
4
import java.net.URISyntaxException;
5
import java.security.KeyManagementException;
6
import java.security.KeyStoreException;
7
import java.security.NoSuchAlgorithmException;
8
import java.util.concurrent.TimeUnit;
9

  
10
import org.apache.commons.logging.Log;
11
import org.apache.commons.logging.LogFactory;
12
import org.apache.http.conn.ssl.SSLConnectionSocketFactory;
13
import org.apache.http.impl.client.HttpClientBuilder;
14
import org.apache.http.ssl.SSLContextBuilder;
15
import org.springframework.http.client.HttpComponentsClientHttpRequestFactory;
16
import org.springframework.web.client.RestTemplate;
17

  
18
import eu.dnetlib.data.mdstore.plugins.GenericDoiMdstorePlugin;
19

  
20
public class HttpFetcher {
21

  
22
	private static final Log log = LogFactory.getLog(GenericDoiMdstorePlugin.class);
23
	public static final int MAX_NUMBER_OF_ATTEMPTS = 10;
24
	private static final int INTERVAL_MILLIS = 20000;
25

  
26
	private static final SSLContextBuilder sslContextBuilder = new SSLContextBuilder();
27
	private static SSLConnectionSocketFactory sslSocketFactory;
28
	static {
29
		try {
30
			sslContextBuilder.loadTrustMaterial(null, (chain, authType) -> true);
31
			sslSocketFactory = new SSLConnectionSocketFactory(sslContextBuilder.build());
32
		} catch (final NoSuchAlgorithmException | KeyStoreException | KeyManagementException e) {
33
			log.error(e);;
34
		}
35
	}
36
	private static final HttpComponentsClientHttpRequestFactory httpRequestFactory = new HttpComponentsClientHttpRequestFactory(HttpClientBuilder
37
			.create()
38
			.setConnectionTimeToLive(0, TimeUnit.MILLISECONDS)
39
			.setMaxConnPerRoute(1)
40
			.setMaxConnTotal(1)
41
			.disableAutomaticRetries()
42
			.disableConnectionState()
43
			.setSSLSocketFactory(sslSocketFactory)
44
			.build());
45

  
46
	public static String fetch(final String url) throws URISyntaxException {
47
		return fetch(new URI(url), 1);
48
	}
49

  
50
	public static String fetch(final URI url) {
51
		return fetch(url, 1);
52
	}
53

  
54
	public static String fetch(final URI url, final int attempts) {
55
		if (attempts > MAX_NUMBER_OF_ATTEMPTS) {
56
			log.error("Max number of attempts reached, downloading url: " + url);
57
			return "";
58
		}
59

  
60
		try {
61
			log.debug("Downloading URL: " + url + " - try: " + attempts);
62
			return (new RestTemplate(httpRequestFactory)).getForObject(url, String.class);
63
		} catch (final Throwable e) {
64
			try {
65
				log.error("Error downloading url: " + url + " - try: " + attempts + " - " + e.getMessage());
66
				Thread.sleep(INTERVAL_MILLIS);
67
				return fetch(url, attempts + 1);
68
			} catch (final InterruptedException e1) {
69
				log.error(e);
70
				return "";
71
			}
72
		}
73
	}
74
}
modules/dnet-isti/branches/OpenaireAccessToken/src/main/java/eu/dnetlib/data/utils/CsvConverter.java
1
package eu.dnetlib.data.utils;
2

  
3
import java.io.StringWriter;
4
import java.util.Collection;
5
import java.util.stream.Collectors;
6

  
7
import org.apache.commons.lang3.StringUtils;
8

  
9
import eu.dnetlib.data.mdstore.plugins.objects.MdRecord;
10

  
11
public class CsvConverter {
12

  
13
	public static String asCsv(final MdRecord record) {
14

  
15
		final StringWriter sw = new StringWriter();
16
		sw.append(prepareValue(record.getId()));
17
		sw.append("\t");
18
		sw.append(prepareValue(record.getTitle()));
19
		sw.append("\t");
20
		sw.append(prepareValue(record.getCreators()));
21
		sw.append("\t");
22
		sw.append(prepareValue(record.getPublisher()));
23
		sw.append("\t");
24
		sw.append(prepareValue(record.getType()));
25
		sw.append("\t");
26
		sw.append(prepareValue("" + record.getDate()));
27
		sw.append("\t");
28
		sw.append(prepareValue(record.getDois()));
29
		sw.append("\t");
30
		sw.append(prepareValue(record.getSource()));
31

  
32
		return sw.toString();
33
	}
34

  
35
	private static String prepareValue(final Collection<String> list) {
36
		return list.stream()
37
				.map(CsvConverter::prepareValue)
38
				.filter(StringUtils::isNotBlank)
39
				.collect(Collectors.joining(", "));
40
	}
41

  
42
	private static String prepareValue(final String s) {
43
		return s == null ? ""
44
				: s.replaceAll("\\n", " ")
45
						.replaceAll("\\t", " ")
46
						.replaceAll("\\s+", " ")
47
						.replaceAll("\\p{C}", "?") // Unprintable chars
48
						.trim();
49
	}
50
}
modules/dnet-isti/branches/OpenaireAccessToken/src/main/java/eu/dnetlib/data/utils/XsltFunctions.java
1
package eu.dnetlib.data.utils;
2

  
3
import java.net.MalformedURLException;
4
import java.net.URL;
5
import java.util.Arrays;
6
import java.util.regex.Matcher;
7
import java.util.regex.Pattern;
8
import java.util.stream.Collectors;
9

  
10
import org.apache.commons.codec.digest.DigestUtils;
11
import org.apache.commons.lang3.StringUtils;
12
import org.apache.commons.logging.Log;
13
import org.apache.commons.logging.LogFactory;
14

  
15
import eu.dnetlib.data.mdstore.plugins.objects.Project;
16

  
17
/**
18
 * Created by sandro on 12/6/16.
19
 */
20
public class XsltFunctions {
21

  
22
	private static final Log log = LogFactory.getLog(XsltFunctions.class);
23

  
24
	public static String cleanNames(final String s) {
25
		if (StringUtils.isBlank(s)) { return ""; }
26
		return cleanNames(s, StringUtils.countMatches(s, ",") > 1 ? "," : ";");
27
	}
28

  
29
	private static String cleanNames(final String s, final String sep) {
30
		return Arrays.stream(s.split(sep))
31
				.map(String::trim)
32
				.map(XsltFunctions::clean)
33
				.map(XsltFunctions::capitalize)
34
				.filter(StringUtils::isNotBlank)
35
				.collect(Collectors.joining("#"));
36
	}
37

  
38
	private static String clean(final String s) {
39
		return s.replaceAll("\\(.*\\)", "")
40
				.replaceAll("\\[.*\\]", "")
41
				.replaceAll("(?i)^et\\.? al(\\.|\\s)*$", "")
42
				.replaceAll("(?i)\\s*et\\.? al(\\.|\\s)*$", "")
43
				.replaceAll("\\d|\\*", "")
44
				.replaceAll("^(\\s|\\-|\\.)+", "")
45
				.replaceAll("\\,", "")
46
				.replaceAll("\\.", ". ")
47
				.trim();
48
	}
49

  
50
	public static String cleanDoi(final String doi) {
51
		final String x = doi.replaceAll("\\?", "")
52
				.replaceAll("\\s*\\/\\s*", "/")
53
				.replaceAll("\\s*\\-\\s*", "-")
54
				.trim()
55
				.replaceAll("\\s", "_");
56

  
57
		if (!x.equals(doi)) {
58
			log.info("Cleaning doi: " + doi + " -> " + x);
59
		}
60

  
61
		return x;
62
	}
63

  
64
	public static String capitalize(final String s) {
65
		return Arrays.stream(s.split(" "))
66
				.map(String::toLowerCase)
67
				.map(StringUtils::capitalize)
68
				.map(XsltFunctions::fixApostrophes)
69
				.collect(Collectors.joining(" "));
70
	}
71

  
72
	public static String fixApostrophes(final String s) {
73
		return s.replaceAll("'a", "'A").replaceAll("'e", "'E").replaceAll("'i", "'I").replaceAll("'o", "'O").replaceAll("'u", "'U")
74
				.replaceAll("a'", "à").replaceAll("e'", "è").replaceAll("i'", "ì").replaceAll("o'", "ò").replaceAll("u'", "ù");
75
	}
76

  
77
	public static boolean isValidProject(final String id) {
78
		return Project.isValid(id);
79
	}
80

  
81
	public static String calculatePersonName(final String s) {
82
		final Pattern pattern = Pattern.compile("info:cnr-pdr\\/author\\/(.+):(.+)\\/(.+)\\/(.+)");
83
		final Matcher matcher = pattern.matcher(s);
84
		return matcher.find() ? capitalize(String.format("%s %s", matcher.group(4), matcher.group(3))) : "";
85
	}
86

  
87
	public static String serverName(final String s) {
88
		try {
89
			return new URL(s).getHost();
90
		} catch (final MalformedURLException e) {
91
			return "Unknown";
92
		}
93
	}
94

  
95
	public static String md5(final String s) {
96
		return DigestUtils.md5Hex(s);
97
	}
98

  
99
	// <xsl:for-each select="tokenize(istiFunction:cleanName(.), ';')">
100
	// <xsl:choose>
101
	// <xsl:when test="matches(normalize-space(.), ',(\s*[a-zA-Z]\.)+$')">
102
	// <creator>
103
	// <creatorName>
104
	// <xsl:value-of select="normalize-space(translate(.,',',' '))"/>
105
	// </creatorName>
106
	// </creator>
107
	// </xsl:when>
108
	//
109
	// <xsl:when test="matches(normalize-space(.), '(^[a-zA-Z\.]+,\s?[a-zA-Z\.\s]+$)|(^[a-zA-Z\.\s]+,\s?[a-zA-Z\.]+$)')">
110
	// <creator>
111
	// <creatorName>
112
	// <xsl:value-of select="normalize-space(translate(.,',',' '))"/>
113
	// </creatorName>
114
	// </creator>
115
	// </xsl:when>
116
	//
117
	// <xsl:otherwise>
118
	// <xsl:for-each select="tokenize(., ',')">
119
	// <creator>
120
	// <creatorName>
121
	// <xsl:value-of select="normalize-space(.)"/>
122
	// </creatorName>
123
	// </creator>
124
	// </xsl:for-each>
125
	// </xsl:otherwise>
126
	// </xsl:choose>
127
	// </xsl:for-each>
128
	//
129

  
130
}
modules/dnet-isti/branches/OpenaireAccessToken/src/main/java/eu/dnetlib/data/utils/BibTexConverter.java
1
package eu.dnetlib.data.utils;
2

  
3
import java.io.IOException;
4
import java.io.StringWriter;
5
import java.io.Writer;
6
import java.util.Collection;
7
import java.util.regex.Matcher;
8
import java.util.regex.Pattern;
9
import java.util.stream.Collectors;
10

  
11
import org.apache.commons.lang3.StringUtils;
12
import org.apache.commons.logging.Log;
13
import org.apache.commons.logging.LogFactory;
14
import org.jbibtex.BibTeXDatabase;
15
import org.jbibtex.BibTeXEntry;
16
import org.jbibtex.BibTeXFormatter;
... This diff was truncated because it exceeds the maximum size that can be displayed.

Also available in: Unified diff