Files and Libraries
The following files and libraries are available:
C Client Library
Created Jan 9, 2016 3:20:00 PM
Introduction
The C module generates the source code for the ANSI-C-compatible data structures and (de)serialization functions that can be used in conjunction with libxml2 to (de)serialize the REST resources as they are represented as XML data.
The generated C source code depends on the XML Reader API and the XML Writer API as well as the <time.h>, <string.h>, and <stdlib.h> C standard libraries.
REST XML Example
#include <novaglobalapi.c>
//...
xmlTextWriterPtr writer = ...; //set up the writer to the url.
novaglobalapi_ns0_countryDto *request_element = ...;
xmlTextReaderPtr reader = ...; //set up the reader to the url.
novaglobalapi_ns0_actionStatus *response_element = ...;
//set up the novaglobalapi_ns0_countryDto...
xml_write_novaglobalapi_ns0_countryDto(writer, request_element);
response_element = xml_read_novaglobalapi_ns0_actionStatus(reader);
//handle the response as needed...
//free the novaglobalapi_ns0_countryDto
free_novaglobalapi_ns0_countryDto(request_element);
//free the novaglobalapi_ns0_actionStatus
free_novaglobalapi_ns0_actionStatus(response_element);
Files
| name | size | description |
|---|---|---|
| novaglobalapi.c | 595.47K | |
| enunciate-common.c | 39.73K | Common code needed for all projects. |
Java Client Library
Created Jan 9, 2016 3:20:02 PM
Introduction
The Java client-side library is used to access the Web service API for this application.
The JAX-WS client-side library is used to provide the set of Java objects that can be serialized to/from XML using JAXB. This is useful for accessing the REST endpoints that are published by this application.
REST Example (Raw JAXB)
java.net.URL url = new java.net.URL(baseURL + "/country");
JAXBContext context = JAXBContext.newInstance( ActionStatus.class, CountryDto.class );
java.net.URLConnection connection = url.openConnection();
connection.setDoOutput(true);
connection.connect();
Unmarshaller unmarshaller = context.createUnmarshaller();
Marshaller marshaller = context.createMarshaller();
marshaller.marshal(countryDto, connection.getOutputStream());
ActionStatus result = (ActionStatus) unmarshaller.unmarshal( connection.getInputStream() );
//handle the result as needed...
REST Example (Jersey client)
com.sun.jersey.api.client.Client client = com.sun.jersey.api.client.Client.create();
ActionStatus result = client.resource(baseUrl + "/country")
.entity(countryDto)
.post(ActionStatus.class);
//handle the result as needed...
Files
| name | size | description |
|---|---|---|
| novaglobalapi-client.jar | 249.64K | The binaries for the Java client library. |
| novaglobalapi-client-sources.jar | 191.71K | The sources for the Java client library. |
Objective C Client Library
Created Jan 9, 2016 3:20:00 PM
Introduction
The Objective C module generates the source code for the Objective C classes and (de)serialization functions that can be used in conjunction with libxml2 to (de)serialize the REST resources as they are represented as XML data.
The generated Objective C source code depends on the XML Reader API and the XML Writer API as well as the base OpenStep foundation classes.
REST XML Example
#import <novaglobalapi.h>
//...
NOVAGLOBALAPINS0CountryDto *requestElement = [[NOVAGLOBALAPINS0CountryDto alloc] init];
NSData *requestData; //data holding the XML for the request.
NOVAGLOBALAPINS0ActionStatus *responseElement;
NSData *responseData; //data holding the XML from the response.
NSURL *baseURL = ...; //the base url including the host and subpath.
NSURL *url = [NSURL URLWithString: @"/country" relativeToURL: baseURL];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url];
NSURLResponse *response = nil;
NSError *error = NULL;
[request setHTTPMethod: @"POST"];
[request setValue:@"application/xml" forHTTPHeaderField:@"Content-Type"];
//set up the NOVAGLOBALAPINS0CountryDto...
requestData = [requestElement writeToXML];
[request setHTTPBody: requestData];
//this example uses a synchronous request,
//but you'll probably want to use an asynchronous call
responseData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
NOVAGLOBALAPINS0ActionStatus *responseElement = [NOVAGLOBALAPINS0ActionStatus readFromXML: responseData];
[responseElement retain];
//handle the response as needed...
Files
| name | size | description |
|---|---|---|
| novaglobalapi.h | 30.31K | |
| novaglobalapi.m | 358.82K | |
| enunciate-common.h | 12.82K | Common header needed for all projects. |
| enunciate-common.m | 42.63K | Common implementation code needed for all projects. |