...
Codeblock | ||||||
---|---|---|---|---|---|---|
| ||||||
private static final String V2_URI = "http://api.nbn-resolving.org/sandbox/v2/"; private static final String DEFAULT_URN_WILDCARD = "urn:nbn:de:01*"; public static void main(String[] args) { urnUrnRepository = new UrnUrnRestClient(V2_URI); final Optional<UrnFilter> urnFilter = Optional.of(new UrnFilter(UrnFilterKey.URN, DEFAULT_URN_WILDCARD)); final UrnSortParameters urnsortparams = new UrnSortParameters().getDefault(); final PagingParameters pagingParameters = new PagingParameters().getDefault(); UrnRestResultUrnObject result = null; try { result = urnUrnRepository.getUrnsWithParams(ORG_LOGIN, ORG_PASSWORD, urnFilter, urnsortparams, pagingParameters); logUrnRestResultUrnObjectToString(result); } catch (final UrnRestApiNotAvailableException e) { System.out.println("The client cannot connect to the URN-REST-API."); } } |
...
Info | ||
---|---|---|
| ||
[main] INFO de.dnb.resolvingdienste.urn.restapi.client.testurnclient.mainForTest - getUrns()... [main] INFO de.dnb.resolvingdienste.urn.restapi.client.testurnclient.mainForTest - [main] INFO de.dnb.resolvingdienste.urn.restapi.client.testurnclient.mainForTest - Response End... |
addUrn()
Ein berechtigter Nutzer fügt dem URN-System eine neue URN samt URLs hinzu.
Notwendige Parameter sind wieder ORG_LOGIN, ORG_PASSWORD, Identifier der zu suchenden Organisation. Der letzte Parameter ist nur für Admins relevant (runAs) und kann leer bleiben.
ORG_LOGIN und ORG_PASSWORD sind Platzhalter für das eigene LOGIN/PASSWORD.
Zusätzlich muss ein RESTCreateUrnRequest zusammengebaut werden, der wiederum einzelne RESTCreateUrlRequests beinhaltet.
Codeblock | ||||||
---|---|---|---|---|---|---|
| ||||||
private static final String V2_URI = "http://api.nbn-resolving.org/sandbox/v2/";
private static final String ORG_ID = "19066";
public static void main(String[] args) {
URI uriEins = null;
URI orgaId = null;
URI uriZwei = null;
String urnString = "urn:nbn:de:0007-2307251255492.453473381209";
try {
uriEins = new URI("https://test/forUrnClient_1.pdf");
uriZwei = new URI("https://test/fforUrnClient_2.docx");
orgaId = new URI(V2_URI + "organisations/id/" + ORG_ID);
} catch (final URISyntaxException e) {
System.out.println("URI Syntax not conform to RFC.");
}
final List<de.dnb.resolvingdienste.urnadministration.urn.restapi.model.RESTCreateUrlRequest> requestsListUrls = new ArrayList<RESTCreateUrlRequest>();
UrnRestResultUrnObject response = null;
requestsListUrls.add(RESTCreateUrlRequestWithDefaultsBuilder.aRESTCreateUrlRequest().withOrganisation(orgaId)
.withUrl(uriEins).build());
requestsListUrls.add(RESTCreateUrlRequestWithDefaultsBuilder.aRESTCreateUrlRequest().withOrganisation(orgaId)
.withUrl(uriZwei).build());
final de.dnb.resolvingdienste.urnadministration.urn.restapi.model.RESTCreateUrnRequest createRequest = RESTCreateUrnRequestWithDefaultsBuilder
.aRESTCreateUrnRequest()
.withUrn(urnString).withUrls(requestsListUrls).build();
try {
response = urnUrnRepository.addNewUrn(ORG_USER, ORG_PASSW, createRequest, ORG_USER);
} catch (final UrnRestApiNotAvailableException e1) {
System.out.println("The client cannot connect to the URN-REST-API.");
}
} |
Diese Anfrage liefert ein Ergebnisobjekt vom Typ UrnRestResultUrnObject. Das UrnRestResultUrnObject "wrapt" die ursprünglichen RESTUrnRepresentation-Objekte und fügt weitere wichtige Informationen hinzu (Anfrage erfolgreich, Anzahl Treffer, weitere Trefferseiten verfügbar, ...).Die Ergebnisse werden paginiert innerhalb einer ArrayList abgespeichert. Das wird in unserem Fall größtenteils nicht benötigt.
Info | ||
---|---|---|
| ||
[main] INFO de.dnb.resolvingdienste.urn.restapi.client.testurnclient.mainForTest - addUrn()... |
...