Matchmaking Admin Guide
Matchmaking Service Admin Guide
The matchmaking service is deployed via Docker service to the docker-hub repository. As a prerequisite it is required to have valid docker account and access to the SourceCode Repository.
For obtaining & building the source code from gitlab, run :
git clone https://gitlab.fit.fraunhofer.de/efpf-pilots/matchmaking-services
A brief introduction to the matchmaking services content, see Matchmaking Developer Guide
Docker Images of Components
|Conceptual Component||Docker Repository URL|
|Configuration Server||Nimble Cloud Config|
|Service Discovery||Nimble Service Discovery & ASG-IMPORTER|
|Gateway Proxy||Nimble Gateway Proxy|
|Indexing Service||Matchmaking Service|
The component of interest is the Matchmaking Service!
Building the Docker Image for the Matchmaking Service
In order to create the image, run the following commands.
mvn clean install cd federated-search-service mvn docker:build
The docker push command replaces the stored docker image with the latest/changed version:
docker push nimbleplatform/matchmaking-service:latest
(Re)start the service in the DEV (SRFG) environment
In the server environment, the docker information for running the distinct containers must be created. Copy the files from Docker Setup to the host environment and adjust the configuration (infra/env_vars & service/env_vars) files. In the host environment, run
./run-efac-portal.sh infra ./run-efac-portal.sh restart-single indexing-service
The first command pulls the required infrastructure such as Apache Solr and basic spring service (service-disovery, gateway and config-server) and starts the services. The second c ommand pulls the image from docker hub - the name of the docker images to be pulled is configured in service/docker-composer.yml and infa/docker-composer.yml
EFPF Federated Service API
The Federated Service API is online available from here. The service API is divided into
- catalogue-controller: Catalogue API to index and delete catalogues (list of items)
- index-controller: Search API to perform Solr operations on indexed parties (organizations), items, item-properties, property-codes and classes (item categories).
- ontology-controller: Controller to upload and delete OWL-based ontologies in the index.
A valid security token is required for using the Federated Search Service API. The index controller reflects the searchable collections and provides the same methods for each of the collections. Descriptions for each of the provided methods are available online.
Using the Service API (Examples)
To get all companies :
curl -i -H "Accept: application/json" -H "Content-Type: application/json" -H "Authorization: EFPF_TOKEN" https://efpf-security-portal.salzburgresearch.at/api/index/party/select?q=*:*
More query parameter examples:
- parameters to limit the results set to 0-30: start=0&rows=30
- parameter to limit the resuts to a particular basePlatform: basePlatform=nimble OR basePlatform=composition etc
curl -i -H "Accept: application/json" -H "Content-Type: application/json" -H "Authorization: EFPF_TOKEN" https://efpf-security-portal.salzburgresearch.at/api/index/party/select?q=basePlatform:nimble&start=0&rows30
To get all products/services :
curl -i -H "Accept: application/json" -H "Content-Type: application/json" -H "Authorization: EFPF_TOKEN" https://efpf-security-portal.salzburgresearch.at/api/index/item/select?q=*:*
To get an EFPF token you need to invoke below endpoint with your EFPF username,password, client_id=apisix, client_secret=apisix_secret and grant_type=“password”;
Matchmaking front-end components in the EFPF portal
Matchmaking/ federated search front-end components are developed as Angular components in the EFPF portal in the below repository