Class: VirtualBox::SystemProperties
- Inherits:
-
AbstractModel
- Object
- AbstractModel
- VirtualBox::SystemProperties
- Defined in:
- lib/virtualbox/system_properties.rb
Overview
Represents the system properties associated with this VirtualBox installation. Many of these properties are readonly and represent limits on the system (max RAM available, max CPU, etc.). There are also configurable options which can be saved such as the default hard disk folder, or default machine folder.
Class Method Summary collapse
-
.populate_relationship(caller, data) ⇒ SystemProperties
Populates the system properties relationship for anything which is related to it.
-
.save_relationship(caller, item) ⇒ Object
Saves the relationship.
Instance Method Summary collapse
-
#initialize(isysprop) ⇒ SystemProperties
constructor
Initializes the system properties object.
-
#initialize_attributes(isysprop) ⇒ Object
Initializes the attributes of an existing shared folder.
-
#save ⇒ Object
Saves the system properties.
Methods inherited from AbstractModel
#destroy, #errors, errors_for_relationship, #existing_record!, #inspect, #lazy_attribute?, #lazy_relationship?, #new_record!, #new_record?, #parent_machine, #populate_attributes, #populate_relationship, #populate_relationships, reload!, #reload!, reload?, reloaded!, #save!, #save_attribute, #save_changed_interface_attributes, #save_interface_attribute, #set_relationship, #validate, #write_attribute
Methods included from AbstractModel::Validatable
#__validates_extract_options, #add_error, #clear_errors, #errors, #errors_on, #full_error_messages, #valid?, #validate, #validates_format_of, #validates_inclusion_of, #validates_numericality_of, #validates_presence_of
Methods included from AbstractModel::Relatable
#destroy_relationship, #destroy_relationships, #has_relationship?, included, #lazy_relationship?, #loaded_relationship?, #populate_relationship, #populate_relationships, #read_relationship, #relationship_class, #relationship_data, #save_relationship, #save_relationships, #set_relationship
Methods included from AbstractModel::VersionMatcher
#assert_version_match, #split_version, #version_match?
Methods included from AbstractModel::Dirty
#changed?, #changes, #clear_dirty!, #ignore_dirty, #method_missing, #set_dirty!
Methods included from AbstractModel::InterfaceAttributes
#load_interface_attribute, #load_interface_attributes, #save_interface_attribute, #save_interface_attributes, #spec_to_proc
Methods included from AbstractModel::Attributable
#attributes, #has_attribute?, included, #lazy_attribute?, #loaded_attribute?, #populate_attributes, #read_attribute, #readonly_attribute?, #write_attribute
Methods included from Logger
included, #logger, #logger_output=
Constructor Details
#initialize(isysprop) ⇒ SystemProperties
Initializes the system properties object. This shouldn’t be called directly. Instead ‘Global#system_properties` should be used to retrieve this object.
51 52 53 |
# File 'lib/virtualbox/system_properties.rb', line 51 def initialize(isysprop) initialize_attributes(isysprop) end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class VirtualBox::AbstractModel::Dirty
Class Method Details
.populate_relationship(caller, data) ⇒ SystemProperties
Populates the system properties relationship for anything which is related to it.
**This method typically won’t be used except internally.**
35 36 37 |
# File 'lib/virtualbox/system_properties.rb', line 35 def populate_relationship(caller, data) new(data) end |
.save_relationship(caller, item) ⇒ Object
Saves the relationship. This simply calls #save on the relationship object.
**This method typically won’t be used except internally.**
43 44 45 |
# File 'lib/virtualbox/system_properties.rb', line 43 def save_relationship(caller, item) item.save end |
Instance Method Details
#initialize_attributes(isysprop) ⇒ Object
Initializes the attributes of an existing shared folder.
56 57 58 59 60 61 62 63 64 65 66 |
# File 'lib/virtualbox/system_properties.rb', line 56 def initialize_attributes(isysprop) # Save the interface to an attribute write_attribute(:interface, isysprop) # Load the attributes from the interface load_interface_attributes(interface) # Clear dirty and mark as existing clear_dirty! existing_record! end |
#save ⇒ Object
Saves the system properties.
69 70 71 |
# File 'lib/virtualbox/system_properties.rb', line 69 def save save_changed_interface_attributes(interface) end |