Skip to content

ModelQueryRouter

gzip_b64(string) gzip an arbitrary string, base64 encode it, and return it
deleteNode() Deletes a node from the tree.

B{NOTE}: You can not delete a root node of a tree

@type uid: string
@param uid: Unique identifier of the node we wish to delete
@rtype: DirectResponse
@return: B{Properties}:
- msg: (string) Status message
asyncGetTree(**additionalKeys, **id) Server side method for asynchronous tree calls. Retrieves
the immediate children of the node specified by "id"

NOTE: our convention on the UI side is if we are asking
for the root node then return the root and its children
otherwise just return the children

@type id: string
@param id: The uid of the node we are getting the children for
@rtype: [dictionary]
@return: Object representing the immediate children
addNode() Add a node to the existing tree underneath the node specified
by the context UID

@type type: string
@param type: Either 'class' or 'organizer'
@type contextUid: string
@param contextUid: Path to the node that will
be the new node's parent (ex. /zport/dmd/Devices)
@type id: string
@param id: Identifier of the new node, must be unique in the
parent context
@type description: string
@param description: (optional) Describes this new node (default: None)
@rtype: dictionary
@return: Marshaled form of the created node
objectExists(uid) @rtype: DirectResponse
@return:
- Properties:
- B{exists} - Returns true if we can find the object specified by the uid
getIndexes() Return list of dicts where each dict represents
list of indexes for a particular object
getDevices(**orderby, **reverse, **fields, **start, **limit, **params) Retrieves a list of devices.
@type limit: integer
@param limit: (optional) Number of items to return

@type params: dictionary
@param params: (optional) Key-value pair of filters for this search
e.g. params={'name': 'localhost'}

@type fields: list of strings
@param fields: (optional) list of indexed fields to retrieve, if None
then attempts to retrive values for all indexes we have in SOLR.
e.g. fields=["name", "osModel", "productionState"]
gunzip_b64(string) Base 64 decode a string, then gunzip it and return the result as JSON.
The input to this method should be gzipped, base 64 encoded JSON. Base
64 encoded strings are allowed to have up to 2 '='s of padding. The zenoss
Ext router eats these, so there is some logic to try padding them back into
the string should initial decoding fail.
moveOrganizer(targetUid, organizerUid) Move the organizer uid to be underneath the organizer
specified by the targetUid.

@type targetUid: string
@param targetUid: New parent of the organizer
@type organizerUid: string
@param organizerUid: The organizer to move
@rtype: DirectResponse
@return: B{Properties}:
- data: (dictionary) Moved organizer