Documentation for PythonAPI
22.40.00py2

protocolobject

This module contains ProtocolObject implementation.

There is no need to import this module directly. Use the methods of the Ruleset object to create and manipulate ProtocolObjects.

>>> o = r.object_add("/ProtocolObjects/Test")
>>> o.add("TCP")
>>> o.add("17")
>>> print o.items
['6', '17']

Classes defined here:

ProtocolObject

ProtocolObject Implementation

Object path: /ProtocolObjects

Inherits from: PLObject
Methods:
Ungrouped add(self, value)
Adds a ProtocolObject item to this ProtocolObject
Inherited from PLObject move(self, newparent)
Moves a object to somewhere else in the tree
remove(self, item)
Removes an Item from this Object
remove_id(self, id)
Removes an Item from this Object by its idnumber
rename(self, newname)
Rename the current object
set_visible(self, visible)
Set or reset the visible flag on the current object
Class Variables:
Item ProtocolObject Item implementation.
Properties:
attributes Arbitrary key/value attributes stored for this object
base_path Only the type portion of the path
creation_date Date and time when this object was created
creator Username that created this object
fullpath Complete path including name of object
id Database id of object
is_global True if this is object is not from the local system
items List of items associated with this object
machineid Deprecated method to access 'systemid'
modification_date Date and time when this object was last modified
modified Deprecated method to access 'modification_date'
modified_by Username that last modified this object
name Name of the object
parent id of parent object (or zero)
path Complete path to where the object is excluding the object name
systemid System ID of the PacketLogic this object belongs to
type Number representing the type of object
visible True if the object is visible in the GUI

add(self, value)

Adds a ProtocolObject item to this ProtocolObject.

Parameters:
  • value (str) - The value is a string describing the ProtocolObject item. The string can be the IP protocol number or a string found in your services file. (GRE, TCP etc...)

move(self, newparent)

Moves a object to somewhere else in the tree

destroys the cache

Parameters:
  • newparent (str) - a path where the new object should reside. Must start with the same objecttype. I.e. you can't move a NetObject to VlanIdObject.
Exceptions raised:
  • ValueError - If the rule is global.
  • ValueError - If you specify an invalid path.

remove(self, item)

Removes an Item from this Object

Parameters:
  • item (Item or str) - Either you send in the Item class there or you send a string with the value. The first Item that matches will be removed.
remove is deprecated: The item argument can also be an integer specifying the id number of the item to be removed. This is usage deprecated, instead use the remove_id method.

remove_id(self, id)

Removes an Item from this Object by its idnumber.

>>> i=o.add(7)
>>> o.remove_id(i.id)
Parameters:
  • item (int) - ID-number of the item to remove

rename(self, newname)

Rename the current object

destroys netobject cache

Parameters:
  • newname (str) - The name that the object should have after rename process
Exceptions raised:
  • ValueError - If the rule is global.

set_visible(self, visible)

Set or reset the visible flag on the current object.

Parameters:
  • visible (bool) - True or False value for the flag.
Exceptions raised:
  • ValueError - If the rule is global.

attributes

Arbitrary key/value attributes stored for this object.

Attributes stored on objects doesn't affect ruleset evaluation, and are designed to be used by integrations to assign integration specific data to objects. The client does special handling for some attributes, such as "hidden" and "automatic".

>>> o.attributes
{}
>>> o.attributes['test'] = "Arbitrary string value"
>>> o.attributes
{'test': "Arbitrary string value"}

base_path

Only the type portion of the path

creation_date

Date and time when this object was created

creator

Username that created this object

fullpath

Complete path including name of object

id

Database id of object.

The unique (for this object type) id number used to refer to the object in rule conditions.

is_global

True if this is object is not from the local system

items

List of items associated with this object

machineid

Deprecated method to access 'systemid'.

modification_date

Date and time when this object was last modified

modified

Deprecated method to access 'modification_date'.

modified_by

Username that last modified this object

name

Name of the object.

This is the name of the object, excluding path. Note that name is utf-8 encoded data in a string, to get a unicode string use o.name.decode("utf-8").

To change the name of an object use the rename method.

parent

id of parent object (or zero)

path

Complete path to where the object is excluding the object name.

systemid

System ID of the PacketLogic this object belongs to

type

Number representing the type of object

visible

True if the object is visible in the GUI