media-backend-rs-client

Clients for NPO API's

License

License

Categories

Categories

CLI User Interface
GroupId

GroupId

nl.vpro.api-client
ArtifactId

ArtifactId

media-backend-rs-client
Last Version

Last Version

5.10.0
Release Date

Release Date

Type

Type

jar
Description

Description

media-backend-rs-client
Clients for NPO API's
Project Organization

Project Organization

NPO

Download media-backend-rs-client

How to add to project

<!-- https://jarcasting.com/artifacts/nl.vpro.api-client/media-backend-rs-client/ -->
<dependency>
    <groupId>nl.vpro.api-client</groupId>
    <artifactId>media-backend-rs-client</artifactId>
    <version>5.10.0</version>
</dependency>
// https://jarcasting.com/artifacts/nl.vpro.api-client/media-backend-rs-client/
implementation 'nl.vpro.api-client:media-backend-rs-client:5.10.0'
// https://jarcasting.com/artifacts/nl.vpro.api-client/media-backend-rs-client/
implementation ("nl.vpro.api-client:media-backend-rs-client:5.10.0")
'nl.vpro.api-client:media-backend-rs-client:jar:5.10.0'
<dependency org="nl.vpro.api-client" name="media-backend-rs-client" rev="5.10.0">
  <artifact name="media-backend-rs-client" type="jar" />
</dependency>
@Grapes(
@Grab(group='nl.vpro.api-client', module='media-backend-rs-client', version='5.10.0')
)
libraryDependencies += "nl.vpro.api-client" % "media-backend-rs-client" % "5.10.0"
[nl.vpro.api-client/media-backend-rs-client "5.10.0"]

Dependencies

compile (6)

Group / Artifact Type Version
nl.vpro.media : media-rs-services jar 5.10.0
org.jboss.resteasy : resteasy-client jar 3.6.2.Final
nl.vpro.shared : vpro-shared-client-resteasy jar 2.6.0
org.apache.httpcomponents : httpclient jar 4.5.6
org.apache.httpcomponents : httpcore jar 4.4.10
org.glassfish.jaxb : jaxb-core jar 2.2.11

provided (2)

Group / Artifact Type Version
org.projectlombok : lombok jar 1.18.4
javax.servlet : javax.servlet-api jar 3.1.0

test (3)

Group / Artifact Type Version
org.slf4j : slf4j-log4j12 jar 1.7.25
org.glassfish.web : javax.el jar 2.2.6
junit : junit jar 4.12

Project Modules

There are no modules declared in this project.

api-clients

Table of Contents

Build Status Maven Central codecov javadoc snapshots

Java API clients for the POMS Rest API’s (Frontend API, Backend API, Pages Publisher)

The clients are basicly generated using resteasy to proxy the actual service interface, and they are decorated with some interceptors and similar techniques to arrange the appropriate authentication, to let the generated client automaticly fill common parameters, and things like that.

We also add a common way to instantiate (using the builder pattern) and configure them.

It is split up in several modules. These are the important ones:

The clients can be configured by code and/or a configuration file in ${user.home}/conf/apiclient.properties.

    NpoApiClients clients = NpoApiClients.configured(nl.vpro.util.Env.TEST).build();
    NpoApiMediaUtil util = new NpoApiMediaUtil(clients);
    try(CloseableIterator<MediaObject> i = util.iterate(null, "vpro-predictions")) {
      i.forEachRemaining(mediaObject -> {
         log.info("{}", i.next());
      });
    }

There are also 'providers' available to configure them easily via spring XML’s or for example XML’s of magnolia CMS (which uses guice)

TODO

  • Document how to wire via spring xml

nl.vpro.api-client

NPO/POMS

Repositories related to POMS and the NPO Frontend API. Maintained by VPRO.

Versions

Version
5.10.0