Class: MetricDb::FluidDb_Server

Inherits:
Server
  • Object
show all
Defined in:
lib/MetricDb/FluidDb/Server.rb

Instance Method Summary collapse

Methods inherited from Server

#[]

Constructor Details

#initialize(uri) ⇒ FluidDb_Server

Returns a new instance of FluidDb_Server.



7
8
9
10
# File 'lib/MetricDb/FluidDb/Server.rb', line 7

def initialize( uri )
    super()
    @db = FluidDb.Db( uri )
end

Instance Method Details

#getNewMetric(name) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/MetricDb/FluidDb/Server.rb', line 12

def getNewMetric( name )
    id = nil
    begin
        id = @db.queryForValue( "SELECT id FROM metric_tbl WHERE name = ?", [name] )
    
    rescue FluidDb::NoDataFoundError=>e

        id = @db.queryForValue( "SELECT NEXTVAL( 'metric_seq' )", [] )
        @db.execute( "INSERT INTO metric_tbl( id, name ) VALUES ( ?, ? )", [id.to_i, name])
    end

    return FluidDb_Metric.new( @db, id, name )
end