Class: MintPress::Resources::OracleSqlStatement

Inherits:
Resource
  • Object
show all
Includes:
MintLogger, Mixins::Properties
Defined in:
src/mintpress-resources/lib/mintpress-resources/sql-statement.rb

Overview

Run a one shot SQL query. It implements a very simple query splitter so you can pass in multiple semicolon seperated queries, and creates which end in /, but is NOT a full sqlplus query implementation at this time - in particular, it is not suitable for defining stored procedures. In this case, you can set "simple_sql" to true, at which point it will pass the query directly to the database.

Properties (Read/Write)

  • #name ⇒ String

    Property Attributes
    
    
    13
    # File 'src/mintpress-resources/lib/mintpress-resources/sql-statement.rb', line 13
    
    property :name, type: String
  • #connect_url ⇒ String
    The connect URL of the database

    Property Attributes
    
    
    15
    # File 'src/mintpress-resources/lib/mintpress-resources/sql-statement.rb', line 15
    
    property :connect_url, type: String
  • #role ⇒ [String,Symbol] (Default Value: :Normal)
    The role - usually empty, but can be SYSDBA

    Property Attributes
    • default:Normal
    
    
    17
    # File 'src/mintpress-resources/lib/mintpress-resources/sql-statement.rb', line 17
    
    property :role, type: [String,Symbol], default: :Normal
  • #user ⇒ String
    The user to connect with

    Property Attributes
    • requiredtrue
    
    
    19
    # File 'src/mintpress-resources/lib/mintpress-resources/sql-statement.rb', line 19
    
    property :user, type: String, required: true
  • #password ⇒ Mint::Secret
    The password to auth with

    Property Attributes
    • requiredtrue
    
    
    21
    # File 'src/mintpress-resources/lib/mintpress-resources/sql-statement.rb', line 21
    
    property :password, type: Mint::Secret, required: true
  • #query ⇒ String (Default Value: Proc.new { self.name })
    The query to execute

    Property Attributes
    • defaultProc.new { self.name }
    
    
    23
    # File 'src/mintpress-resources/lib/mintpress-resources/sql-statement.rb', line 23
    
    property :query, type: String, default: Proc.new { self.name }
  • #verification_query ⇒ String
    A verification query - if this returns rows, then the resource is considered satisfied

    Property Attributes
    
    
    25
    # File 'src/mintpress-resources/lib/mintpress-resources/sql-statement.rb', line 25
    
    property :verification_query, type: String
  • #ignore_errors ⇒ [TrueClass, FalseClass] (Default Value: false)
    Ignore errors?

    Property Attributes
    • defaultfalse
    
    
    27
    # File 'src/mintpress-resources/lib/mintpress-resources/sql-statement.rb', line 27
    
    property :ignore_errors, type: [TrueClass, FalseClass], default: false
  • #simple_sql ⇒ [TrueClass, FalseClass] (Default Value: false)
    Pass the sql directly, rather than trying to parse it?

    Property Attributes
    • defaultfalse
    
    
    29
    # File 'src/mintpress-resources/lib/mintpress-resources/sql-statement.rb', line 29
    
    property :simple_sql, type: [TrueClass, FalseClass], default: false
  • #name ⇒ String
    Things like tmpdir and so on?

    Property Attributes
    • requiredtrue
    
    
    38
    # File 'src/mintpress-resources/lib/mintpress-resources/resource.rb', line 38
    
    property :name, type: String, required: true
  • #host ⇒ MintPress::Infrastructure::Host (Default Value: Proc.new { r=nil if self.default_localhost r = MintPress::Infrastructure::Localhost.new(final_user: self.default_localhost_user) end r })
    Host on which to operate. Depending on your system, this will usually default to localhost.

    Property Attributes
    • paralleltrue
    • defaultProc.new { r=nil if self.default_localhost r = MintPress::Infrastructure::Localhost.new(final_user: self.default_localhost_user) end r }
    
    
    41
    42
    43
    44
    45
    # File 'src/mintpress-resources/lib/mintpress-resources/resource.rb', line 41
    
    property :host, type: MintPress::Infrastructure::Host, parallel: true, default: Proc.new { r=nil
    if self.default_localhost
      r = MintPress::Infrastructure::Localhost.new(final_user: self.default_localhost_user)
     end
    r }
  • #as_admin ⇒ [TrueClass, FalseClass] (Default Value: false)
    Should the operation be performed as an administratrive user (root on linux/unix, Adminstrator on windows) or should it be performed as unprivledged? The default behaviour is to perform as unprivledged unless otherwise asked.

    Property Attributes
    • defaultfalse
    
    
    66
    # File 'src/mintpress-resources/lib/mintpress-resources/resource.rb', line 66
    
    property :as_admin, type: [TrueClass, FalseClass], default: false

Properties (Read Only)

Constant Summary

Constants included from MintLogger

MintLogger::DEBUG, MintLogger::ERROR, MintLogger::FATAL, MintLogger::INFO, MintLogger::UNKNOWN, MintLogger::VERBOSE, MintLogger::WARN

Instance Attribute Summary

Attributes included from Mixins::Properties

#autopush_set_cache, #dynamic_create, #harvest_on_access, #harvest_undefined_only, #harvested, #tree_root

Instance Method Summary collapse

Methods included from MintLogger::Utils::Common

#boolean_val, #has_value?, #no_value?, #nvl, #path_as_symbol, #ruby_level_to_send

Methods included from Mixins::Properties

#[], #[]=, #add_validate_report_result, #armour_set_property, #array_contains?, #array_is_a?, #check_autopush, #check_stack_overflow, #clone_property_object, #cloner_handle_single_property, #coerce_single, #contains_as_string?, #display_validate_report_result, #double_initialize?, #dump_to_hash, #find_parent, #find_parent_by_identity, #generate_accessor_functions, #get_canonical_renamed, #get_from_opts, #get_my_name, #get_property, #get_property_item, #has?, included, #initialize_validate_report, #inspect, #is_cloned_object?, #is_mintpress_object?, #is_probably_canonical?, #is_set?, #local_debug, #local_info, #local_verbose, #mintpress_property_definitions, #place_object_by_identity, #process_properties, #prop_set?, #property, #property_definitions, #property_details, #property_is_simple_object?, #push_root!, #require_property, #require_update, #retrieve_docstring, #sanitize, #set_map_dirty, #set_property, #set_property_item, #show_short_array, #strip_defaults!, #synchronize, #uncloned_property_definitions, #update_map, #validate, #validate_generic, #validate_properties, #validate_property, #validate_required, #version_allowed?, #weakref

Constructor Details

#initialize(opts = {}) ⇒ OracleSqlStatement

Returns a new instance of OracleSqlStatement.

Instance Method Details

#executeObject

Execute the query

#verified?Boolean

Returns:

  • (Boolean)