Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

...

Codeblock
languagejava
themeEclipse
titlegetNamespace()
collapsetrue
private static final String V2_URI = "http://api.nbn-resolving.org/sandbox/v2/";
private static final String DEFAULT_NASP_WILDCARD = "urn:nbn:de*";
private static final String ORG_NAMESPACE = "urn:nbn:de:0007";
private static UrnNamespaceRestClient naspRepository;


public static void main(String[] args) {
 	naspRepository = new UrnNamespaceRestClient(V2_URI);
	
	UrnRestResultNamespaceObject result = null;

        try {
            result = naspRepository.getNamespaceViaName(ORG_LOGIN, ORG_PASSWORD, ORG_NAMESPACE, ORG_USER);
        } catch (final UrnRestApiNotAvailableException e) {
            System.out.println("The client cannot connect to the URN-REST-API.");
        }

        LOGGER.info("Response End...");
}

...

Diese Anfrage liefert der Einfachheit halber ein Ergebnisobjekt vom Typ UrnRestResultOrganisationObject zurück. Das eigentliche Ergebnis ist vom Typ RESTOrganisationRepresentation. Das UrnRestResultOrganisationObject "wrapt" das ursprüngliche RESTOrganisationRepresentation -ursprüngliche RESTOrganisationRepresentationObjekt und fügt weitere Informationen hinzu (Anfrage erfolgreich, Statuscode).
Gut zu sehen, ist der Umstand, dass man als Nicht
Admin oder NIcht-Besitzer der Organisation nur eine eingeschränkte Sicht auf die Informationen hat (null-Werte)

Info
titleBeispielantwort mittels toString() und Log4j

[main] INFO de.dnb.resolvingdienste.urn.restapi.client.testurnclient.mainForTest - getUrngetOrganisationByID()...
[main] INFO de.dnb.resolvingdienste.urn.restapi.client.testurnclient.mainForTest - You will only see information enabled for your login.
[main] INFO de.dnb.resolvingdienste.urn.restapi.client.testurnclient.mainForTest - UrnRestResultOrganisationObject [
getOrganisation()=RESTOrganisationRepresentation [
self=http://api.nbn-resolving.org/sandbox/v2/organisations/id/1906619068,
id=1906619068,
login=Doylenull,
created=2023-07-11T0912T11:0632:29Z,
lastModified=2023-07-11T0912T11:0632:29Z,
name=Test Client for DoyleTest,
email= testClient-user@exampleuserDorf@example.org,
address=RESTAddress [street=TestClientweg TestClientDorfweg 1, postcode=1234512111, city=TestClient StadtDorf, country=TestClient Republik],
comment=null,
primaryContactSurname=Sir Client Testernull,
primaryContactForename=Test The Clientnull,
primaryContactEmail=testClient-user@example.orgnull,
primaryContactPhone=+49 69 1000-0null,
primaryContactFunction=null,
primaryContactComment=null,
contacts=null,
namespaces=http://api.nbn-resolving.org/sandbox/v2/organisations/id/1906619068/contactsnamespaces],
namespaces=http://api. toString()=UrnRestResultObject [successful=true, httpStatusCode=200, ]]
[main] INFO de.dnb.resolvingdienste.urn.restapi.client.testurnclient.mainForTest - Response End...

getOrganisationById()

Funktioniert analog zum vorherigen Beispiel.

getOrganisationWithFilter()

Um die Organisationen gezielt abfragen zu können, werden Filter- und Sortierparameter benötigt. 

ORG_LOGIN und ORG_PASSWORD sind Platzhalter für das eigene LOGIN/PASSWORD.
Codeblock
languagejava
themeEclipse
titlegetNamespaces()
private static final String V2_URI = "http://api.nbn-resolving.org/sandbox/v2/";
 private static UrnOrganisationRepository orgRepository;


public static void main(String[] args) {
 	orgRepository = new UrnOrganisationRestClient(V2_URI);
	
	    final Optional<OrganisationFilter> orgFilter = Optional
                .of(new OrganisationFilter(OrganisationFilterKey.NAME, "Test*"));

        UrnRestResultOrganisationObject resultObject = null;
        try {
            resultObject = orgRepository.getOrganisationsWithParams(ORG_USER, ORG_PASSW, orgFilter,
                    new OrganisationSortParameters(), new PagingParameters());
        } catch (final UrnRestApiNotAvailableException e) {
            LOGGER.error("The client cannot connect to the server. Is there an internet connection?");
        }
}


Diese Anfrage liefert ein Ergebnisobjekt vom Typ UrnRestResultOrganisationObject. Das UrnRestResultNamespaceObject "wrapt" die ursprünglichen RESTOrganisationRepresentation-Objekte und fügt weitere wichtige Informationen hinzu (Anfrage erfolgreich, Anzahl Treffer, weitere Trefferseiten verfügbar, ...).Die Ergebnisse werden paginiert innerhalb einer ArrayList abgespeichert. 

Info
titleBeispielantwort mittels toString() und Log4j

[main] INFO de.dnb.resolvingdienste.urn.restapi.client.testurnclient.mainForTest - getOrganisationWithFilter()...
[main] INFO de.dnb.resolvingdienste.urn.restapi.client.testurnclient.mainForTest - You will only see information enabled for your login.
[main] INFO de.dnb.resolvingdienste.urn.restapi.client.testurnclient.mainForTest - UrnRestResultOrganisationObject [
getOrganisationsPage()=ResultPage [results=[
RESTOrganisationRepresentation [self=http://api.nbn-resolving.org/sandbox/v2/organisations/id/19068,
id=19068,
login=null,
created=2023-07-12T11:32:29Z,
lastModified=2023-07-12T11:32:29Z,
name=Test Client for Test,
email= testClient-userDorf@example.org,
....
....
....,
RESTOrganisationRepresentation [
self=http://api.nbn-resolving.org/sandbox/v2/organisations/id/12539,
id=12539,
login=null,
created=2003-10-01T06:00:00Z,
lastModified=2021-07-13T13:05:36Z,
name=Testinstitution,
email=test@dnb.de,
address=RESTAddress [street=Teststraße 1, postcode=12345, city=Frankfurt am Main, country=null],
....
....
namespaces=http://api.nbn-resolving.org/sandbox/v2/organisations/id/1906612539/namespaces]],
resultCount=4,
hasNext=true,
offset=0, count=20],
toString()=UrnRestResultObject [successful=true, httpStatusCode=200, ]]

[main] INFO de.dnb.resolvingdienste.urn.restapi.client.testurnclient.mainForTest - Response End...

...