Class: JSS::RestrictedSoftware

Inherits:
APIObject show all
Includes:
Scopable
Defined in:
lib/jss/api_object/restricted_software.rb,
lib/jss.rb

Overview

Restricted Software in the JSS.

This class only supports showing of object data.

See Also:

Constant Summary collapse

RSRC_BASE =

The base for REST resources of this class

"restrictedsoftware"
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]
SCOPE_TARGET_KEY =

Our scopes deal with computers

:computers

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(args = {}) ⇒ RestrictedSoftware

Instance Methods



74
75
76
77
78
79
80
81
82
83
84
# File 'lib/jss/api_object/restricted_software.rb', line 74

def initialize(args = {})
  super args, []

  @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])
end

Instance Attribute Details

#delete_executableBoolean (readonly)

Returns whether to delete the executable.

Returns:

  • (Boolean)

    whether to delete the executable



62
63
64
# File 'lib/jss/api_object/restricted_software.rb', line 62

def delete_executable
  @delete_executable
end

#display_messageString (readonly)

Returns message displayed to the user.

Returns:

  • (String)

    message displayed to the user



65
66
67
# File 'lib/jss/api_object/restricted_software.rb', line 65

def display_message
  @display_message
end

#kill_processBoolean (readonly)

Returns whether to kill the running process.

Returns:

  • (Boolean)

    whether to kill the running process



59
60
61
# File 'lib/jss/api_object/restricted_software.rb', line 59

def kill_process
  @kill_process
end

#match_exact_process_nameBoolean (readonly)

Returns whether to return match exact process name.

Returns:

  • (Boolean)

    whether to return match exact process name



53
54
55
# File 'lib/jss/api_object/restricted_software.rb', line 53

def match_exact_process_name
  @match_exact_process_name
end

#process_nameString (readonly)

Returns the process name.

Returns:

  • (String)

    the process name



50
51
52
# File 'lib/jss/api_object/restricted_software.rb', line 50

def process_name
  @process_name
end

#scopeObject Originally defined in module Scopable

Attribtues

#send_notificationBoolean (readonly)

Returns whether to send a notification.

Returns:

  • (Boolean)

    whether to send a notification



56
57
58
# File 'lib/jss/api_object/restricted_software.rb', line 56

def send_notification
  @send_notification
end

#siteHash (readonly)

Returns the :name and :id of the site for this machine.

Returns:

  • (Hash)

    the :name and :id of the site for this machine



68
69
70
# File 'lib/jss/api_object/restricted_software.rb', line 68

def site
  @site
end

Instance Method Details

#parse_scopevoid 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_updatevoid 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.

#updateObject Originally defined in module Scopable

A wrapper around the update method, to try catching RestClient::Conflict 409 errors when we couldn’t verify all ldap users/groups due to lack of ldap connections