summaryrefslogtreecommitdiff
path: root/lib/puppet/util/ini_file
diff options
context:
space:
mode:
authorChris Price <chris@puppetlabs.com>2012-07-28 21:59:54 -0700
committerChris Price <chris@puppetlabs.com>2012-07-28 21:59:54 -0700
commit9c76b6af1200c71e7ae72e0e2f349919a3081738 (patch)
treee3dc5ca1824f1fcf74c08e78d649eed394408a78 /lib/puppet/util/ini_file
parent91273a5a2b0c88e7129908406fd0933a0d88ef11 (diff)
downloadpuppet-inifile-9c76b6af1200c71e7ae72e0e2f349919a3081738.tar.gz
puppet-inifile-9c76b6af1200c71e7ae72e0e2f349919a3081738.tar.bz2
First (basic) working version of ini_setting provider
Diffstat (limited to 'lib/puppet/util/ini_file')
-rw-r--r--lib/puppet/util/ini_file/section.rb34
1 files changed, 34 insertions, 0 deletions
diff --git a/lib/puppet/util/ini_file/section.rb b/lib/puppet/util/ini_file/section.rb
new file mode 100644
index 0000000..39f2959
--- /dev/null
+++ b/lib/puppet/util/ini_file/section.rb
@@ -0,0 +1,34 @@
+module Puppet
+module Util
+class IniFile
+ class Section
+ def initialize(name, start_line, end_line, settings)
+ @name = name
+ @start_line = start_line
+ @end_line = end_line
+ @existing_settings = settings.nil? ? {} : settings
+ @additional_settings = {}
+ end
+
+ attr_reader :name, :start_line, :end_line, :additional_settings
+
+ def get_value(setting_name)
+ @existing_settings[setting_name] || @additional_settings[setting_name]
+ end
+
+ def has_existing_setting?(setting_name)
+ @existing_settings.has_key?(setting_name)
+ end
+
+ def update_existing_setting(setting_name, value)
+ @existing_settings[setting_name] = value
+ end
+
+ def set_additional_setting(setting_name, value)
+ @additional_settings[setting_name] = value
+ end
+
+ end
+end
+end
+end \ No newline at end of file