Waiana service module

From WandoraWiki
(Difference between revisions)
Jump to: navigation, search
Line 1: Line 1:
 
'''This is an upcoming feature that is not available in the current release of Wandora. The Waiana service will be part of release 2014-08-20.'''
 
'''This is an upcoming feature that is not available in the current release of Wandora. The Waiana service will be part of release 2014-08-20.'''
  
Waiana service module implements a local topic map storage with an API compatible with the [http://projects.topicmapslab.de/projects/maiana/wiki/API_Controller Maiana API]. [http://maiana.topicmapslab.de/ Maiana] and Maiana API build up a topic map storage created and hosted but the [http://www.topicmapslab.de/ Topic Maps Labs]. As the Topic Maps Labs is not really working anymore, the status of Maiana and it's API are more or less vague. The Maiana has been broken for several years. Wandora originally supported Maiana API and allowed import and export of topic maps between Maiana and Wandora. The Waiana service module has been implemented to infuse new life into the import and export features, already implemented. Although the Waiana doesn't support topic map browsing but the storage API only, it is probably useful if the user wants to set a shared topic map storage.
+
Waiana service module implements a local topic map storage with an API compatible with the [http://projects.topicmapslab.de/projects/maiana/wiki/API_Controller Maiana API]. [http://maiana.topicmapslab.de/ Maiana] and Maiana API build up a topic map storage created and hosted but the [http://www.topicmapslab.de/ Topic Maps Labs]. As the Topic Maps Labs is not really working anymore, the status of Maiana and it's API are more or less vague. The Maiana has been broken for several years. Wandora originally supported Maiana API and allowed import and export of topic maps between Maiana and Wandora. The Waiana service module has been implemented to infuse new life into the import and export features, already implemented. Although the Waiana doesn't support topic map browsing but the storage API only, it is probably useful if the user wants to set up a shared topic map storage.
  
 
== Waiana API ==
 
== Waiana API ==
Line 9: Line 9:
 
  http://127.0.0.1:8898/waiana/
 
  http://127.0.0.1:8898/waiana/
  
The API returns JSON responses and requests can be both JSON objects and URL parameters.
+
Supported operations of API are
 +
 
 +
* List topic maps in storage
 +
* Upload topic map into the storage
 +
* Download topic map from the storage
 +
* Delete topic map in storage
 +
 
 +
Each operation and operation specific parameters are submitted to the API as a JSON structure. The JSON structure contains a value for key '''command'''. This command is the main switch for different operations. Similar JSON structure requests were supported by the original Maiana API too. Addition to the JSON formatted requests, Waiana API accepts REST requests where URL parameters are used instead of JSON key-value pairs.
 +
 
 +
Next chapters describe both API requests and responses for all these operations.
 +
 
 +
== List topic maps in storage ==
 +
 
 +
The request JSON formatted request for listing topic maps in storage is
 +
 
 +
parameters = {
 +
  command: "show_local_file_list",
 +
}
 +
 
 +
The REST formatted request for listing topic maps in the storage is
 +
 
 +
http://127.0.0.1:8898/waiana/?command=show_local_file_list
 +
 
 +
Command '''show_topic_map_list''' or '''show_local_topic_map_list''' can be used instead of '''show_local_file_list'''.
 +
 
 +
The Waiana API replies with a response that is JSON formatted data structure similar to
 +
 
 +
{
 +
  "data":[
 +
    {
 +
        "is_schema":false,
 +
        "is_public":true,
 +
        "is_downloadable":true,
 +
        "is_editable":true,
 +
        "name":"test topicmap",
 +
        "short_name":"test",
 +
        "owner":"anonymous"
 +
      }
 +
  ],
 +
  "code":0
 +
}
 +
 
 +
Where each topic map has one JSON object in the data array. Each topic map is associated with several boolen flags, a display name and a short name and an identifier of the topic map owner.

Revision as of 13:13, 18 August 2014

This is an upcoming feature that is not available in the current release of Wandora. The Waiana service will be part of release 2014-08-20.

Waiana service module implements a local topic map storage with an API compatible with the Maiana API. Maiana and Maiana API build up a topic map storage created and hosted but the Topic Maps Labs. As the Topic Maps Labs is not really working anymore, the status of Maiana and it's API are more or less vague. The Maiana has been broken for several years. Wandora originally supported Maiana API and allowed import and export of topic maps between Maiana and Wandora. The Waiana service module has been implemented to infuse new life into the import and export features, already implemented. Although the Waiana doesn't support topic map browsing but the storage API only, it is probably useful if the user wants to set up a shared topic map storage.

Waiana API

The Waiana API implements a local topic map storage. API's service handle is

http://127.0.0.1:8898/waiana/

Supported operations of API are

  • List topic maps in storage
  • Upload topic map into the storage
  • Download topic map from the storage
  • Delete topic map in storage

Each operation and operation specific parameters are submitted to the API as a JSON structure. The JSON structure contains a value for key command. This command is the main switch for different operations. Similar JSON structure requests were supported by the original Maiana API too. Addition to the JSON formatted requests, Waiana API accepts REST requests where URL parameters are used instead of JSON key-value pairs.

Next chapters describe both API requests and responses for all these operations.

List topic maps in storage

The request JSON formatted request for listing topic maps in storage is

parameters = {
  command: "show_local_file_list",
}

The REST formatted request for listing topic maps in the storage is

http://127.0.0.1:8898/waiana/?command=show_local_file_list

Command show_topic_map_list or show_local_topic_map_list can be used instead of show_local_file_list.

The Waiana API replies with a response that is JSON formatted data structure similar to

{
  "data":[
    {
       "is_schema":false,
       "is_public":true,
       "is_downloadable":true,
       "is_editable":true,
       "name":"test topicmap",
       "short_name":"test",
       "owner":"anonymous"
     }
  ],
  "code":0
}

Where each topic map has one JSON object in the data array. Each topic map is associated with several boolen flags, a display name and a short name and an identifier of the topic map owner.

Personal tools