require 'rubygems'  
require 'active_record'  
ActiveRecord::Base.establish_connection(  
    :adapter=> "oracle_enhanced",  
    :host=> "xxx.xxx.xx.xx",
    :port=> "1521",
    :database=> "/xxxx",
    :username=> "xxxx",
    :password=> "xxxx"
)  

class CONF < ActiveRecord::Base 
    
    self.table_name =  "conf_test"
    self.primary_key =  "ID"
end
# Create/set config if it doesn't already exist
def conf_set(name,value,desc=nil,type=nil)
    _conf_set(name,value,desc,false,type)
    end
    def _conf_set(name,value,desc,force,type)
       r = CONF.where(name: name.to_s).first_or_initialize
      puts CONF.where(name: name.to_s).to_sql
      # only if forced or new, set value
      if force || r.new_record?
        # Allow set to force config type
        r.value = value
        if type
          r.value_type = type;
        elsif value.class == TrueClass || value.class == FalseClass
          r.value_type = 1;
          if value.class == TrueClass
            r.value = 1
          else
            r.value = 0
          end
        else
          r.value_type = 0;
          r.value = value
        end
      end
      # Do not update description on nil even if forcing an update
      if desc
        r.description = desc
      end
      puts "conf record values: '#{r.name}' -  '#{r.value}' - '#{r.value_type}' - '#{r.description}' "       
      r.save
      return r
    end
  begin
    conf_set('global.DB_VERSION',false,"Testing Config Insert")
  rescue 
    puts "JDBC Error #{$!}"
  end
