/*
 * Copyright (c) 2001-2009 XORP, Inc.
 * See the XORP LICENSE.lgpl file for licensing, conditions, and warranties
 * on use.
 *
 * DO NOT EDIT THIS FILE - IT IS PROGRAMMATICALLY GENERATED
 *
 * Generated by 'tgt-gen'.
 *
 * $XORP: xorp/xrl/targets/policy.xrls,v 1.21 2009/01/05 18:31:15 jtc Exp $
 */

/**
 *  Get name of Xrl Target
 */
finder://policy/common/0.1/get_target_name->name:txt

/**
 *  Get version string from Xrl Target
 */
finder://policy/common/0.1/get_version->version:txt

/**
 *  Get status of Xrl Target
 */
finder://policy/common/0.1/get_status->status:u32&reason:txt

/**
 *  Request clean shutdown of Xrl Target
 */
finder://policy/common/0.1/shutdown

/**
 *  Announce target birth to observer.
 *
 *  @param target_class the target class name.
 *
 *  @param target_instance the target instance name.
 */
finder://policy/finder_event_observer/0.1/xrl_target_birth?target_class:txt&target_instance:txt

/**
 *  Announce target death to observer.
 *
 *  @param target_class the target class name.
 *
 *  @param target_instance the target instance name.
 */
finder://policy/finder_event_observer/0.1/xrl_target_death?target_class:txt&target_instance:txt

/**
 *  Create a term in a policy. The term will be the last term in the policy
 *  statement.
 *
 *  @param policy the name of the policy.
 *
 *  @param order position of term.
 *
 *  @param term the name of the term.
 */
finder://policy/policy/0.1/create_term?policy:txt&order:txt&term:txt

/**
 *  Delete a term in a policy.
 *
 *  @param policy the name of the policy.
 *
 *  @param term the name of the term.
 */
finder://policy/policy/0.1/delete_term?policy:txt&term:txt

/**
 *  Update the source/dest/action block of a term in a policy. Note: if
 *  statement is empty, the previous one in that position will be deleted.
 *
 *  @param policy the name of the policy.
 *
 *  @param term the name of the term.
 *
 *  @param block the block to update (0:source, 1:dest, 2:action).
 *
 *  @param order numerical position (local) of statement.
 *
 *  @param statement the statement to insert or delete.
 */
finder://policy/policy/0.1/update_term_block?policy:txt&term:txt&block:u32&order:txt&statement:txt

/**
 *  Create a policy.
 *
 *  @param policy name of the policy.
 */
finder://policy/policy/0.1/create_policy?policy:txt

/**
 *  Delete a policy.
 *
 *  @param policy name of the policy.
 */
finder://policy/policy/0.1/delete_policy?policy:txt

/**
 *  Create a set.
 *
 *  @param set name of the set.
 */
finder://policy/policy/0.1/create_set?set:txt

/**
 *  Replace elements in a set.
 *
 *  @param type the type of the set.
 *
 *  @param set name of the set.
 *
 *  @param elements comma delimited list of set elements.
 */
finder://policy/policy/0.1/update_set?type:txt&set:txt&elements:txt

/**
 *  Delete a set.
 *
 *  @param set name of the set.
 */
finder://policy/policy/0.1/delete_set?set:txt

/**
 *  Add an element to a set.
 *
 *  @param type the type of the set.
 *
 *  @param set name of the set.
 *
 *  @param element the element to add.
 */
finder://policy/policy/0.1/add_to_set?type:txt&set:txt&element:txt

/**
 *  Delete an element from a set.
 *
 *  @param type the type of the set.
 *
 *  @param set name of the set.
 *
 *  @param element the element to delete.
 */
finder://policy/policy/0.1/delete_from_set?type:txt&set:txt&element:txt

/**
 *  Commit the configuration.
 */
finder://policy/policy/0.1/done_global_policy_conf

/**
 *  Replace import/export policies for a protocol. Will normally cause a
 *  delayed commit.
 *
 *  @param protocol protocol for which policies must be replaced.
 *
 *  @param policies comma separated list of policies.
 *
 *  @param modifier a match statement to insert in each policy.
 */
finder://policy/policy/0.1/import?protocol:txt&policies:txt&modifier:txt

finder://policy/policy/0.1/export?protocol:txt&policies:txt&modifier:txt

/**
 *  Add a variable to the varmap configuration.
 *
 *  @param protocol the protocol this variable is available to.
 *
 *  @param variable name of the variable.
 *
 *  @param type the type of the variable.
 *
 *  @param access the permissions on the variable (r/rw).
 *
 *  @param id unique id for this var. Scoped by protocol.
 */
finder://policy/policy/0.1/add_varmap?protocol:txt&variable:txt&type:txt&access:txt&id:u32

/**
 *  Dump state of policy manager. To be used ONLY for debugging.
 *
 *  @param id which aspect of the internal state to dump.
 */
finder://policy/policy/0.1/dump_state?id:u32->state:txt

/**
 *  Update the mapping from protocols to their XRL target name.
 *
 *  @param protocol protocol to update.
 *
 *  @param target XRL target for the protocol.
 */
finder://policy/policy/0.1/set_proto_target?protocol:txt&target:txt

/**
 *  Process a CLI command.
 *
 *  @param processor_name the processor name for this command.
 *
 *  @param cli_term_name the terminal name the command was entered from.
 *
 *  @param cli_session_id the CLI session ID the command was entered from.
 *
 *  @param command_name the command name to process.
 *
 *  @param command_args the command arguments to process.
 *
 *  @param ret_processor_name the processor name to return back to the CLI.
 *
 *  @param ret_cli_term_name the terminal name to return back.
 *
 *  @param ret_cli_session_id the CLI session ID to return back.
 *
 *  @param ret_command_output the command output to return back.
 */
finder://policy/cli_processor/0.1/process_command?processor_name:txt&cli_term_name:txt&cli_session_id:u32&command_name:txt&command_args:txt->ret_processor_name:txt&ret_cli_term_name:txt&ret_cli_session_id:u32&ret_command_output:txt

