Class: VersiononeSdk::Asset

Inherits:
JsonDoc::Document
  • Object
show all
Defined in:
lib/versionone_sdk/asset.rb

Overview

VersiononeSdk::Asset class is a JsonDoc::Document subclass that includes the #inflateNames method to add AssetState.Name based on the VersionOne classifications avaiable at: community.versionone.com/Developers/Developer-Library/Concepts/Asset_State

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(dValues = nil, dSchema = nil, bDefaultifyDoc = false, bIsStrict = true, opts = {}) ⇒ Asset

Returns a new instance of Asset.



10
11
12
13
# File 'lib/versionone_sdk/asset.rb', line 10

def initialize(dValues=nil,dSchema=nil,bDefaultifyDoc=false,bIsStrict=true,opts={})
  opts[:bUseDeepKeys] = false
  super(dValues, dSchema, bDefaultifyDoc, bIsStrict, opts)
end

Instance Attribute Details

#dSchemaObject

Returns the value of attribute dSchema.



8
9
10
# File 'lib/versionone_sdk/asset.rb', line 8

def dSchema
  @dSchema
end

Instance Method Details

#convertIntegersObject



25
26
27
28
29
30
31
32
33
# File 'lib/versionone_sdk/asset.rb', line 25

def convertIntegers()
  [:Order,:AssetState].each do |yKey|
    xxVal = self.getProp(yKey)
    if xxVal.is_a?(String) && xxVal =~ /^-?[0-9]+$/
      xxVal = xxVal.to_i
      self.setProp(yKey,xxVal)
    end
  end
end

#getDefaultSchemaObject



15
16
17
18
# File 'lib/versionone_sdk/asset.rb', line 15

def getDefaultSchema()
  dSchema =  {}
  return dSchema
end

#inflateObject



20
21
22
23
# File 'lib/versionone_sdk/asset.rb', line 20

def inflate()
  self.inflateNames
  self.convertIntegers
end

#inflateNamesObject



35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# File 'lib/versionone_sdk/asset.rb', line 35

def inflateNames()
  dAssetState = {
    0   => 'Future',
    64  => 'Active',
    128 => 'Closed',
    200 => 'Template (Dead)',
    208 => 'Broken Down (Dead)',
    255 => 'Deleted (Dead)'
  }
  if @dDocument.key?(:AssetState)
    sAssetState = @dDocument[:AssetState]
    if sAssetState.is_a?(String) && sAssetState =~ /^[0-9]+$/
      iAssetState = sAssetState.to_i
      if dAssetState.key?(iAssetState)
        sAssetStateName = dAssetState[iAssetState]
        self.setProp(:'AssetState.Name',sAssetStateName)
      end
    end
  end
end