CRUD Update web service. It updates instance records descriptions from dataset indexes on different systems (Virtuoso, Solr, etc). More...

Inheritance diagram for CrudUpdate:
Collaboration diagram for CrudUpdate:

Public Member Functions

 __construct ($document, $mime, $dataset, $registered_ip, $requester_ip)
 Constructor.
 __destruct ()
 pipeline_getError ()
 Returns the error structure.
 pipeline_getResultset ()
 Create a resultset in a pipelined mode based on the processed information by the Web service.
 injectDoctype ($xmlDoc)
 Inject the DOCType in a XML document.
 ws_conneg ($accept, $accept_charset, $accept_encoding, $accept_language)
 Do content negotiation as an external Web Service.
 pipeline_conneg ($accept, $accept_charset, $accept_encoding, $accept_language)
 Do content negotiation as an internal, pipelined, Web Service that is part of a Compound Web Service.
 pipeline_getResponseHeaderStatus ()
 Returns the response HTTP header status.
 pipeline_getResponseHeaderStatusMsg ()
 Returns the response HTTP header status message.
 pipeline_getResponseHeaderStatusMsgExt ()
 Returns the response HTTP header status message extension.
 pipeline_serialize ()
 Serialize the web service answer.
 pipeline_serialize_reification ()
 Non implemented method (only defined).
 ws_serialize ()
 Serialize the web service answer.
 ws_respond ($content)
 Sends the HTTP response to the requester.
 process ()
 Update the information of a given instance record.
 xmlEncode ($string)
 Encode content to be included in XML files.
 jsonEncode ($string)
 Encode a string to put in a JSON value.

Static Public Attributes

static $supportedSerializations
 Supported serialization mime types by this Web service.
static $data_ini = "/data/"
 data.ini file folder
static $network_ini = "/usr/share/structwsf/"
 network.ini file folder

Protected Member Functions

 validateQuery ()
 Validate a query to this web service.

Protected Attributes

 $db_username = ""
 Database user name.
 $db_password = ""
 Database password.
 $db_dsn = ""
 Database DSN connection.
 $db_host = "localhost"
 Database host.
 $dtdBaseURL = ""
 DTD URL of the web service.
 $wsf_graph = ""
 The graph where the Web Services Framework description has been indexed.
 $wsf_base_url = ""
 Base URL of the WSF.
 $wsf_base_path = ""
 Local server path of the WSF files.
 $wsf_local_ip = ""
 Local server path of the WSF files.
 $wsf_solr_core = ""
 The core to use for Solr; "" for no core.
 $ontologies_files_folder = ""
 Path to the ontologies description files (in RDFS and OWL).
 $solr_host = "localhost"
 Hostname where to send queries to the Solr instance.
 $ontological_structure_folder = ""
 Path to the structWSF ontological structure.
 $track_create = FALSE
 Enable the tracking of records changes from the Crud Create web service endpoint.
 $track_update = FALSE
 Enable the tracking of records changes from the Crud Update web service endpoint.
 $track_delete = FALSE
 Enable the tracking of records changes from the Crud Delete web service endpoint.
 $tracking_endpoint = ""
 Specifies a specific WSF tracking web service endpoint URL to access the tracking endpoint. This is useful to put all the record changes tracking on a different, dedicated purposes, WSF server. If this parameter is commented, we will use the wsf_base_url to access the tracking endpoints. If it is uncommented, then we will use the endpoint specified by this parameter.
 $triplestore_port = "8890"
 Port number where the triple store server is reachable.
 $solr_port = "8983"
 Port number where the Solr store server is reachable.
 $log_table = "SD.WSF.ws_queries_log"
 Name of the logging table on the Virtuoso instance.
 $solr_auto_commit = FALSE
 Auto commit handled by the Solr data management systems. If this parameter is true, then this means Solr will handle the commit operation by itself. If it is false, then the web services will trigger the commit operations. Usually, Auto-commit should be handled by Solr when the size of the dataset is too big, otherwise operation such as delete could take much time.
 $fields_index_folder = "/tmp/"
 This is the folder there the file of the index where all the fields defined in Solr are indexed. You have to make sure that the web server has write access to this folder. This folder path has to end with a slash "/".
 $uri
 The URI of the Authentication Registrar web service.
 $title
 The Title of the Authentication Registrar web service.
 $crud_usage
 The CRUD usage of the Authentication Registrar web service.
 $endpoint
 The endpoint of the Authentication Registrar web service.
 $owlapiNbSessions
 Number of sessions (threads) to use in parallel.
 $owlapiBridgeURI
 URL where the Java Bridge can be accessed from this server.
 $geoEnabled = FALSE

Private Attributes

 $db
 Database connection.
 $conneg
 Conneg object that manage the content negotiation capabilities of the web service.
 $dtdURL
 URL where the DTD of the XML document can be located on the Web.
 $registered_ip = ""
 IP being registered.
 $dataset
 Dataset where to index the resource.
 $document = array()
 RDF document where resource(s) to be added are described. Maximum size (by default) is 8M (default php.ini setting).
 $mime = ""
 Mime of the RDF document serialization.
 $requester_ip = ""
 Requester's IP used for request validation.
 $errorMessenger
 Error messages of this web service.

Detailed Description

CRUD Update web service. It updates instance records descriptions from dataset indexes on different systems (Virtuoso, Solr, etc).


Author:
Frederick Giasson, Structured Dynamics LLC.




Definition at line 26 of file CrudUpdate.php.


Constructor & Destructor Documentation

__construct ( document,
mime,
dataset,
registered_ip,
requester_ip 
)

Constructor.

Initialize the Crud Update


Returns:
returns NULL
Author:
Frederick Giasson, Structured Dynamics LLC.




Definition at line 141 of file CrudUpdate.php.

References $dataset, $document, $mime, $registered_ip, $requester_ip, and WebService::__construct().

Here is the call graph for this function:

__destruct (  ) 

Reimplemented from WebService.

Definition at line 195 of file CrudUpdate.php.

Referenced by ws_respond().


Member Function Documentation

injectDoctype ( xmlDoc  ) 

Inject the DOCType in a XML document.


Parameters:
[in] $xmlDoc The XML document where to inject the doctype
Returns:
a XML document with a doctype
Author:
Frederick Giasson, Structured Dynamics LLC.




Reimplemented from WebService.

Definition at line 300 of file CrudUpdate.php.

jsonEncode ( string  )  [inherited]

Encode a string to put in a JSON value.

Parameters:
[in] $string The string to escape


Returns:
returns the escaped string
Author:
Frederick Giasson, Structured Dynamics LLC.




Definition at line 591 of file WebService.php.

Referenced by Sparql::pipeline_serialize(), Search::pipeline_serialize(), DatasetRead::pipeline_serialize(), CrudRead::pipeline_serialize(), Browse::pipeline_serialize(), and AuthLister::pipeline_serialize().

pipeline_conneg ( accept,
accept_charset,
accept_encoding,
accept_language 
)

Do content negotiation as an internal, pipelined, Web Service that is part of a Compound Web Service.


Parameters:
[in] $accept Accepted mime types (HTTP header)
[in] $accept_charset Accepted charsets (HTTP header)
[in] $accept_encoding Accepted encodings (HTTP header)
[in] $accept_language Accepted languages (HTTP header)
Returns:
returns NULL
Author:
Frederick Giasson, Structured Dynamics LLC.




Reimplemented from WebService.

Definition at line 411 of file CrudUpdate.php.

References ws_conneg().

Here is the call graph for this function:

pipeline_getError (  ) 

Returns the error structure.


Returns:
returns the error structure
Author:
Frederick Giasson, Structured Dynamics LLC.




Reimplemented from WebService.

Definition at line 273 of file CrudUpdate.php.

pipeline_getResponseHeaderStatus (  ) 

Returns the response HTTP header status.


Returns:
returns the response HTTP header status
Author:
Frederick Giasson, Structured Dynamics LLC.




Reimplemented from WebService.

Definition at line 424 of file CrudUpdate.php.

pipeline_getResponseHeaderStatusMsg (  ) 

Returns the response HTTP header status message.


Returns:
returns the response HTTP header status message
Author:
Frederick Giasson, Structured Dynamics LLC.




Reimplemented from WebService.

Definition at line 436 of file CrudUpdate.php.

pipeline_getResponseHeaderStatusMsgExt (  ) 

Returns the response HTTP header status message extension.


Returns:
returns the response HTTP header status message extension
Note:
The extension of a HTTP status message is
Author:
Frederick Giasson, Structured Dynamics LLC.




Reimplemented from WebService.

Definition at line 450 of file CrudUpdate.php.

pipeline_getResultset (  ) 

Create a resultset in a pipelined mode based on the processed information by the Web service.


Returns:
a resultset XML document
Author:
Frederick Giasson, Structured Dynamics LLC.




Reimplemented from WebService.

Definition at line 286 of file CrudUpdate.php.

pipeline_serialize (  ) 

Serialize the web service answer.


Returns:
returns the serialized content
Author:
Frederick Giasson, Structured Dynamics LLC.




Reimplemented from WebService.

Definition at line 462 of file CrudUpdate.php.

pipeline_serialize_reification (  ) 

Non implemented method (only defined).


Author:
Frederick Giasson, Structured Dynamics LLC.




Reimplemented from WebService.

Definition at line 472 of file CrudUpdate.php.

process (  ) 

Update the information of a given instance record.


Author:
Frederick Giasson, Structured Dynamics LLC.




Todo:
Fixing this to use the DB.

This method is currently not working. The problem is that we ahve an issue in CrudCreate and Virtuoso's LONG VARCHAR column. It appears that there is a bug somewhere in the "php -> odbc -> virtuoso" path. If we are not requesting to return the LONG VARCHAR column, everything works fine.

Reimplemented from WebService.

Definition at line 523 of file CrudUpdate.php.

References Namespaces::$dcterms, $description, WebService::$endpoint, Namespaces::$foaf, Namespaces::$geo, Namespaces::$geonames, Namespaces::$iron, $query, Namespaces::$rdfs, Namespaces::$sco, Namespaces::$skos_2004, Namespaces::$skos_2008, $type, $types, WebService::$uri, $ws_cr, validateQuery(), and WebService::xmlEncode().

Here is the call graph for this function:

validateQuery (  )  [protected]

Validate a query to this web service.


Returns:
TRUE if valid; FALSE otherwise
Author:
Frederick Giasson, Structured Dynamics LLC.




Reimplemented from WebService.

Definition at line 215 of file CrudUpdate.php.

References $ws_av.

Referenced by process().

ws_conneg ( accept,
accept_charset,
accept_encoding,
accept_language 
)

Do content negotiation as an external Web Service.


Parameters:
[in] $accept Accepted mime types (HTTP header)
[in] $accept_charset Accepted charsets (HTTP header)
[in] $accept_encoding Accepted encodings (HTTP header)
[in] $accept_language Accepted languages (HTTP header)
Returns:
returns NULL
Author:
Frederick Giasson, Structured Dynamics LLC.




Reimplemented from WebService.

Definition at line 328 of file CrudUpdate.php.

References $supportedSerializations, and $ws_dr.

Referenced by pipeline_conneg().

ws_respond ( content  ) 

Sends the HTTP response to the requester.


Parameters:
[in] $content The content (body) of the response.
Returns:
NULL
Author:
Frederick Giasson, Structured Dynamics LLC.




Reimplemented from WebService.

Definition at line 498 of file CrudUpdate.php.

References __destruct().

Here is the call graph for this function:

ws_serialize (  ) 

Serialize the web service answer.


Returns:
returns the serialized content
Author:
Frederick Giasson, Structured Dynamics LLC.




Reimplemented from WebService.

Definition at line 484 of file CrudUpdate.php.


Field Documentation

$conneg [private]

Conneg object that manage the content negotiation capabilities of the web service.

Definition at line 32 of file CrudUpdate.php.

$crud_usage [protected, inherited]

The CRUD usage of the Authentication Registrar web service.

Definition at line 122 of file WebService.php.

Referenced by AuthRegistrarWs::ws_conneg().

$data_ini = "/data/" [static, inherited]

data.ini file folder

Definition at line 32 of file WebService.php.

Referenced by WebService::__construct(), and Logger::__construct().

$dataset [private]

Dataset where to index the resource.

Definition at line 46 of file CrudUpdate.php.

Referenced by __construct().

$db [private]

Database connection.

Definition at line 29 of file CrudUpdate.php.

$db_dsn = "" [protected, inherited]

Database DSN connection.

Definition at line 44 of file WebService.php.

$db_host = "localhost" [protected, inherited]

Database host.

Definition at line 47 of file WebService.php.

$db_password = "" [protected, inherited]

Database password.

Definition at line 41 of file WebService.php.

$db_username = "" [protected, inherited]

Database user name.

Definition at line 38 of file WebService.php.

$document = array() [private]

RDF document where resource(s) to be added are described. Maximum size (by default) is 8M (default php.ini setting).

Definition at line 49 of file CrudUpdate.php.

Referenced by __construct().

$dtdBaseURL = "" [protected, inherited]

DTD URL of the web service.

Definition at line 50 of file WebService.php.

$dtdURL [private]

URL where the DTD of the XML document can be located on the Web.

Definition at line 35 of file CrudUpdate.php.

$endpoint [protected, inherited]

The endpoint of the Authentication Registrar web service.

Definition at line 125 of file WebService.php.

Referenced by process(), CrudDelete::process(), and CrudCreate::process().

$errorMessenger [private]

Error messages of this web service.

Definition at line 58 of file CrudUpdate.php.

$fields_index_folder = "/tmp/" [protected, inherited]

This is the folder there the file of the index where all the fields defined in Solr are indexed. You have to make sure that the web server has write access to this folder. This folder path has to end with a slash "/".

Definition at line 113 of file WebService.php.

$geoEnabled = FALSE [protected, inherited]

Definition at line 133 of file WebService.php.

$log_table = "SD.WSF.ws_queries_log" [protected, inherited]

Name of the logging table on the Virtuoso instance.

Definition at line 100 of file WebService.php.

$mime = "" [private]

Mime of the RDF document serialization.

Definition at line 52 of file CrudUpdate.php.

Referenced by __construct().

$network_ini = "/usr/share/structwsf/" [static, inherited]

network.ini file folder

Definition at line 35 of file WebService.php.

Referenced by WebService::__construct().

$ontological_structure_folder = "" [protected, inherited]

Path to the structWSF ontological structure.

Definition at line 74 of file WebService.php.

$ontologies_files_folder = "" [protected, inherited]

Path to the ontologies description files (in RDFS and OWL).

Definition at line 68 of file WebService.php.

$owlapiBridgeURI [protected, inherited]

URL where the Java Bridge can be accessed from this server.

Definition at line 131 of file WebService.php.

$owlapiNbSessions [protected, inherited]

Number of sessions (threads) to use in parallel.

Definition at line 128 of file WebService.php.

$registered_ip = "" [private]

IP being registered.

Definition at line 43 of file CrudUpdate.php.

Referenced by __construct().

$requester_ip = "" [private]

Requester's IP used for request validation.

Definition at line 55 of file CrudUpdate.php.

Referenced by __construct().

$solr_auto_commit = FALSE [protected, inherited]

Auto commit handled by the Solr data management systems. If this parameter is true, then this means Solr will handle the commit operation by itself. If it is false, then the web services will trigger the commit operations. Usually, Auto-commit should be handled by Solr when the size of the dataset is too big, otherwise operation such as delete could take much time.

Definition at line 107 of file WebService.php.

$solr_host = "localhost" [protected, inherited]

Hostname where to send queries to the Solr instance.

Definition at line 71 of file WebService.php.

$solr_port = "8983" [protected, inherited]

Port number where the Solr store server is reachable.

Definition at line 96 of file WebService.php.

$supportedSerializations [static]
Initial value:
    array ("application/json", "application/rdf+xml", "application/rdf+n3", "application/*", "text/xml", "text/*",
      "*/*")

Supported serialization mime types by this Web service.

Definition at line 38 of file CrudUpdate.php.

Referenced by ws_conneg().

$title [protected, inherited]

The Title of the Authentication Registrar web service.

Definition at line 119 of file WebService.php.

Referenced by DatasetUpdate::__construct(), and DatasetRead::process().

$track_create = FALSE [protected, inherited]

Enable the tracking of records changes from the Crud Create web service endpoint.

Definition at line 77 of file WebService.php.

$track_delete = FALSE [protected, inherited]

Enable the tracking of records changes from the Crud Delete web service endpoint.

Definition at line 83 of file WebService.php.

$track_update = FALSE [protected, inherited]

Enable the tracking of records changes from the Crud Update web service endpoint.

Definition at line 80 of file WebService.php.

$tracking_endpoint = "" [protected, inherited]

Specifies a specific WSF tracking web service endpoint URL to access the tracking endpoint. This is useful to put all the record changes tracking on a different, dedicated purposes, WSF server. If this parameter is commented, we will use the wsf_base_url to access the tracking endpoints. If it is uncommented, then we will use the endpoint specified by this parameter.

Definition at line 90 of file WebService.php.

$triplestore_port = "8890" [protected, inherited]

Port number where the triple store server is reachable.

Definition at line 93 of file WebService.php.

$wsf_base_path = "" [protected, inherited]

Local server path of the WSF files.

Definition at line 59 of file WebService.php.

$wsf_base_url = "" [protected, inherited]

Base URL of the WSF.

Definition at line 56 of file WebService.php.

$wsf_graph = "" [protected, inherited]

The graph where the Web Services Framework description has been indexed.

Definition at line 53 of file WebService.php.

$wsf_local_ip = "" [protected, inherited]

Local server path of the WSF files.

Definition at line 62 of file WebService.php.

$wsf_solr_core = "" [protected, inherited]

The core to use for Solr; "" for no core.

Definition at line 65 of file WebService.php.


The documentation for this class was generated from the following file:
Copyright © 2009-2011. Structured Dynamics LLC Structured Dynamics LLC. All rights reserved.