Using RQL commands not implemented yet

jRQL did not offer all RQL commands existing. So you might need to use not yet implemented RQL commands within your programs. This is possible with jRQL of course, because you can trigger your own RQL commands and parse the response.

First, every jRQL object offers the following methods to call the MS with a self build RQL command string:
every object > callCms()
every object > callCmsWithoutParsing()

This is achieved by the interface CmsClientContainer which every jRQL class implements directly or indirectly. At the end the implementation in class CmsClient is used, therefore you can use should use it immediately there, if it is available.

Use the 2nd method, if you don’t need the result of a RQL command at all or the MS did not even return anything interesting.  It’s a small performance improvement.

Second you need to get all GUIDs to build your own RQL request string. Please refer to the post get GUIDs from all jRQL objects.

At last you need to parse the returned RQL response from the method callCms(). jRQL encapsulate the parsed response in one of the following classes:
RQLNode
RQLNodeList

You need to retrieve the respective tags and attribute values from the response now. Most important methods to achieve this are:
RQLNode > getNode()
RQLNode > getNodes()
RQLNode > getAttribute()

After getting the GUIDs of an implemented jRQL object again, I recommend to retrieve it via the offered methods and proceed with jRQL objects instead of using raw RQL commands for further steps.

With this way you can even use RQL commands which jRQL do not offer. This is not very elegant, I know, therefore keep me informed what’s missing and i will try to implement it into next version of jRQL.  I will announce an enhancement of jRQL API on the jRQL twitter stream.

Advertisements
Post a comment or leave a trackback: Trackback URL.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: