Sha256: 1d7732f90712862798753051f1f4a46088ea5b85b24c51e41aa6ca9d024adf64

Contents?: true

Size: 1.59 KB

Versions: 20

Compression:

Stored size: 1.59 KB

Contents

#
# $Id: utils.rb,v 1.5 2006/01/29 06:14:19 djberg96 Exp $
#

module DBI
    #
    # Utility classes and methods for use by both DBDs and consumers.
    #
    module Utils
        #
        # Given a block, returns the execution time for the block.
        #
        def self.measure
            start = ::Time.now
            yield
            ::Time.now - start
        end

        #
        # parse a string of the form "database=xxx;key=val;..."
        # or database:host and return hash of key/value pairs
        #
        # Used in DBI.connect and offspring.
        #
        def self.parse_params(str)
            # improved by John Gorman <jgorman@webbysoft.com>
            params = str.split(";")
            hash = {}
            params.each do |param| 
                key, val = param.split("=") 
                hash[key] = val if key and val
            end 
            if hash.empty?
                database, host = str.split(":")
                hash['database'] = database if database
                hash['host']     = host if host   
            end
            hash 
        end
    end # module Utils
end # module DBI

#
# Type converter.
#
# FIXME this really needs to go into DBI::TypeUtil or similar
module DBI::Utils::ConvParam
    #
    # Wrapper to convert arrays of bound objects via DBI::TypeUtil#convert.
    #
    def self.conv_param(driver_name, *params)
        params.collect { |param| DBI::TypeUtil.convert(driver_name, param) }
    end
end

require 'dbi/utils/date'
require 'dbi/utils/time'
require 'dbi/utils/timestamp'
require 'dbi/utils/xmlformatter'
require 'dbi/utils/tableformatter'

Version data entries

20 entries across 20 versions & 3 rubygems

Version Path
ydbi-0.6.0 lib/dbi/utils.rb
ydbi-0.5.9 lib/dbi/utils.rb
ydbi-0.5.8 lib/dbi/utils.rb
ydbi-0.5.7 lib/dbi/utils.rb
ydbi-0.5.6 lib/dbi/utils.rb
ydbi-0.5.5 lib/dbi/utils.rb
ydbi-0.5.4 lib/dbi/utils.rb
ydbi-0.5.3 lib/dbi/utils.rb
ydbi-0.5.2 lib/dbi/utils.rb
ydbi-0.5.1 lib/dbi/utils.rb
ydbi-0.5.0 lib/dbi/utils.rb
rails-dbi-0.1.2 lib/dbi/utils.rb
rails-dbi-0.1.1 lib/dbi/utils.rb
rails-dbi-0.1.0 lib/dbi/utils.rb
dbi-0.4.5 lib/dbi/utils.rb
dbi-0.4.4 lib/dbi/utils.rb
dbi-0.4.3 lib/dbi/utils.rb
dbi-0.4.2 lib/dbi/utils.rb
dbi-0.4.0 lib/dbi/utils.rb
dbi-0.4.1 lib/dbi/utils.rb