Class: JSS::RestrictedSoftware
- Defined in:
- lib/jss/api_object/restricted_software.rb,
lib/jss.rb
Overview
Restricted Software items in the JSS.
Constant Summary collapse
- RSRC_BASE =
The base for REST resources of this class
'restrictedsoftware'.freeze
- RSRC_LIST_KEY =
the hash key used for the JSON list output of all objects in the JSS
:restricted_software
- RSRC_OBJECT_KEY =
The hash key used for the JSON object output. It’s also used in various error messages
:restricted_software
- VALID_DATA_KEYS =
these keys, as well as :id and :name, are present in valid API JSON data for this class
[:scope].freeze
- SCOPE_TARGET_KEY =
Our scopes deal with computers
:computers
Instance Attribute Summary collapse
-
#delete_executable ⇒ Boolean
(also: #delete_executable?)
Whether to delete the executable.
-
#display_message ⇒ String
Message displayed to the user.
-
#kill_process ⇒ Boolean
(also: #kill_process?)
Whether to kill the running process.
-
#match_exact_process_name ⇒ Boolean
(also: #match_exact_process_name?)
Whether to return match exact process name.
-
#need_to_update ⇒ Boolean
included
from Updatable
readonly
Do we have unsaved changes?.
-
#process_name ⇒ String
The process name.
-
#scope ⇒ Object
included
from Scopable
Attribtues.
-
#send_notification ⇒ Boolean
(also: #send_notification?)
Whether to send a notification.
-
#site ⇒ Hash
The :name and :id of the site for this machine.
Instance Method Summary collapse
-
#clone(new_name) ⇒ APIObject
included
from Creatable
make a clone of this API object, with a new name.
- #create ⇒ Object
-
#initialize(args = {}) ⇒ RestrictedSoftware
constructor
Instance Methods.
-
#name=(newname) ⇒ void
included
from Updatable
Change the name of this item Remember to #update to push changes to the server.
-
#parse_scope ⇒ void
included
from Scopable
private
Call this during initialization of objects that have a scope and the scope instance will be created from @init_data.
-
#should_update ⇒ void
included
from Scopable
When the scope changes, it calls this to tell us that an update is needed.
- #update ⇒ Object
Constructor Details
#initialize(args = {}) ⇒ RestrictedSoftware
Instance Methods
61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/jss/api_object/restricted_software.rb', line 61 def initialize(args = {}) super args @init_data[:general] ||= {} @process_name = @init_data[:general][:process_name] @match_exact_process_name = @init_data[:general][:match_exact_process_name] @send_notification = @init_data[:general][:send_notification] @kill_process = @init_data[:general][:kill_process] @delete_executable = @init_data[:general][:delete_executable] @display_message = @init_data[:general][:display_message] @site = JSS::APIObject.get_name(@init_data[:general][:site]) @site ||= 'None' @scope ||= JSS::Scopable::Scope.new SCOPE_TARGET_KEY, nil end |
Instance Attribute Details
#delete_executable ⇒ Boolean Also known as: delete_executable?
Returns whether to delete the executable.
50 51 52 |
# File 'lib/jss/api_object/restricted_software.rb', line 50 def delete_executable @delete_executable end |
#display_message ⇒ String
Returns message displayed to the user.
53 54 55 |
# File 'lib/jss/api_object/restricted_software.rb', line 53 def @display_message end |
#kill_process ⇒ Boolean Also known as: kill_process?
Returns whether to kill the running process.
47 48 49 |
# File 'lib/jss/api_object/restricted_software.rb', line 47 def kill_process @kill_process end |
#match_exact_process_name ⇒ Boolean Also known as: match_exact_process_name?
Returns whether to return match exact process name.
41 42 43 |
# File 'lib/jss/api_object/restricted_software.rb', line 41 def match_exact_process_name @match_exact_process_name end |
#need_to_update ⇒ Boolean (readonly) Originally defined in module Updatable
Returns do we have unsaved changes?.
#process_name ⇒ String
Returns the process name.
38 39 40 |
# File 'lib/jss/api_object/restricted_software.rb', line 38 def process_name @process_name end |
#send_notification ⇒ Boolean Also known as: send_notification?
Returns whether to send a notification.
44 45 46 |
# File 'lib/jss/api_object/restricted_software.rb', line 44 def send_notification @send_notification end |
#site ⇒ Hash
Returns the :name and :id of the site for this machine.
56 57 58 |
# File 'lib/jss/api_object/restricted_software.rb', line 56 def site @site end |
Instance Method Details
#clone(new_name) ⇒ APIObject Originally defined in module Creatable
make a clone of this API object, with a new name. The class must be creatable
#create ⇒ Object
122 123 124 125 126 |
# File 'lib/jss/api_object/restricted_software.rb', line 122 def create raise JSS::MissingDataError, 'process_name must be set before creating' if @process_name.to_s.empty? raise JSS::AlreadyExistsError, "A #{RSRC_OBJECT_KEY} named #{@name} already exists in the JSS" if self.class.all_names(:refresh).include? @name super end |
#name=(newname) ⇒ void Originally defined in module Updatable
This method returns an undefined value.
Change the name of this item Remember to #update to push changes to the server.
#parse_scope ⇒ void Originally defined in module Scopable
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
This method returns an undefined value.
Call this during initialization of objects that have a scope and the scope instance will be created from @init_data
#should_update ⇒ void Originally defined in module Scopable
This method returns an undefined value.
When the scope changes, it calls this to tell us that an update is needed.
#update ⇒ Object
128 129 130 131 |
# File 'lib/jss/api_object/restricted_software.rb', line 128 def update raise JSS::MissingDataError, 'process_name must be set before updating' if @process_name.to_s.empty? super end |