salesforce_cache 0.0.7 → 0.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
 - data/CHANGELOG.md +2 -0
 - data/README.md +9 -0
 - data/VERSION +1 -1
 - data/lib/salesforce_cache/client.rb +50 -2
 - data/salesforce_cache.gemspec +2 -2
 - metadata +20 -30
 
    
        checksums.yaml
    ADDED
    
    | 
         @@ -0,0 +1,7 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            ---
         
     | 
| 
      
 2 
     | 
    
         
            +
            SHA1:
         
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: 7cbe252c1b92caf8f4925b90828a1bee262872a3
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: fae3393c4ddde48b380df64b15ac3f5790e9fa36
         
     | 
| 
      
 5 
     | 
    
         
            +
            SHA512:
         
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 3ab71ceeb245c9aa00d90f4d71491990d0e70dde49a2c137c71913eb689f1209fb599a45f331120825ec726bd8df1f57486ec39caca6fa746aa955e4da93247c
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 90a6fb919848319465a1e7796fb7ea64f9bb65b0f726329ff1554e061e6df24f4ab029c1d36431e268289e2caf7688891f9ea6c094367389b4bc93ae7de4a171
         
     | 
    
        data/CHANGELOG.md
    CHANGED
    
    
    
        data/README.md
    CHANGED
    
    | 
         @@ -50,6 +50,13 @@ To install SalesforceCache, use the following command: 
     | 
|
| 
       50 
50 
     | 
    
         
             
                sfRestClient = SalesforceCache::RestClient.new(paramsGeneral,paramsToken)
         
     | 
| 
       51 
51 
     | 
    
         
             
                sObjectHash  = sfRestClient.getSobjectForSfidAndType('my_sobject_id','Account')
         
     | 
| 
       52 
52 
     | 
    
         | 
| 
      
 53 
     | 
    
         
            +
                # get list of cached Ids as an array of hashes of format: {:id=>id,:type=>type}
         
     | 
| 
      
 54 
     | 
    
         
            +
             
     | 
| 
      
 55 
     | 
    
         
            +
                ids = sfCacheClient.getCachedIds                             # all cached Ids for all types
         
     | 
| 
      
 56 
     | 
    
         
            +
                ids = sfCacheClient.getCachedIds('Account')                  # all cached Account Ids
         
     | 
| 
      
 57 
     | 
    
         
            +
                ids = sfCacheClient.getCachedIds('Account,Opportunity')      # cached Account & Opporunity Ids
         
     | 
| 
      
 58 
     | 
    
         
            +
                ids = sfCacheClient.getCachedIds(['Account','Opportunity'])  # cached Account & Opporunity Ids
         
     | 
| 
      
 59 
     | 
    
         
            +
             
     | 
| 
       53 
60 
     | 
    
         
             
            #Documentation
         
     | 
| 
       54 
61 
     | 
    
         
             
            --------------
         
     | 
| 
       55 
62 
     | 
    
         | 
| 
         @@ -88,6 +95,8 @@ Notes 
     | 
|
| 
       88 
95 
     | 
    
         
             
            #Change Log
         
     | 
| 
       89 
96 
     | 
    
         
             
            -----------
         
     | 
| 
       90 
97 
     | 
    
         | 
| 
      
 98 
     | 
    
         
            +
            - **2014-03-07**: 0.0.8
         
     | 
| 
      
 99 
     | 
    
         
            +
              - Add #getCachedIds([type]) method to get Ids of cached items for iteration
         
     | 
| 
       91 
100 
     | 
    
         
             
            - **2014-03-06**: 0.0.7
         
     | 
| 
       92 
101 
     | 
    
         
             
              - Documentation fix for example
         
     | 
| 
       93 
102 
     | 
    
         
             
            - **2014-03-05**: 0.0.6
         
     | 
    
        data/VERSION
    CHANGED
    
    | 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            0.0. 
     | 
| 
      
 1 
     | 
    
         
            +
            0.0.8
         
     | 
| 
         @@ -19,6 +19,9 @@ module SalesforceCache 
     | 
|
| 
       19 
19 
     | 
    
         
             
                end
         
     | 
| 
       20 
20 
     | 
    
         | 
| 
       21 
21 
     | 
    
         
             
                def getFileForSfidAndType(sSfid=nil,sType=nil)
         
     | 
| 
      
 22 
     | 
    
         
            +
                  return nil if sSfid.nil? || sType.nil?
         
     | 
| 
      
 23 
     | 
    
         
            +
                  sSfid.strip!
         
     | 
| 
      
 24 
     | 
    
         
            +
                  sType.strip!
         
     | 
| 
       22 
25 
     | 
    
         
             
                  sFile  = %Q{sf_#{sType}_#{sSfid}.json}
         
     | 
| 
       23 
26 
     | 
    
         
             
                  return sFile
         
     | 
| 
       24 
27 
     | 
    
         
             
                end
         
     | 
| 
         @@ -117,8 +120,8 @@ module SalesforceCache 
     | 
|
| 
       117 
120 
     | 
    
         
             
                    end
         
     | 
| 
       118 
121 
     | 
    
         
             
                  end
         
     | 
| 
       119 
122 
     | 
    
         
             
                  if dObj.is_a?(Hash) && dObj.has_key?(:Id)
         
     | 
| 
       120 
     | 
    
         
            -
                    sDir        = 
     | 
| 
       121 
     | 
    
         
            -
                    sPath       = 
     | 
| 
      
 123 
     | 
    
         
            +
                    sDir        =  self.getDirForType(sType)
         
     | 
| 
      
 124 
     | 
    
         
            +
                    sPath       =  self.getPathForSfidAndType(sSfid,sType)
         
     | 
| 
       122 
125 
     | 
    
         
             
                    FileUtils.mkdir_p(sDir) if ! Dir.exists?(sDir)
         
     | 
| 
       123 
126 
     | 
    
         
             
                    File.open(sPath,'w') do |fTop|
         
     | 
| 
       124 
127 
     | 
    
         
             
                      dTop      =  {
         
     | 
| 
         @@ -133,5 +136,50 @@ module SalesforceCache 
     | 
|
| 
       133 
136 
     | 
    
         
             
                  return nil
         
     | 
| 
       134 
137 
     | 
    
         
             
                end
         
     | 
| 
       135 
138 
     | 
    
         | 
| 
      
 139 
     | 
    
         
            +
                def getCachedIds(xTypes=nil)
         
     | 
| 
      
 140 
     | 
    
         
            +
                  dTypes = {}
         
     | 
| 
      
 141 
     | 
    
         
            +
                  if xTypes.is_a?(String)
         
     | 
| 
      
 142 
     | 
    
         
            +
                    xTypes.split(',').each do |sType|
         
     | 
| 
      
 143 
     | 
    
         
            +
                      sType.strip!
         
     | 
| 
      
 144 
     | 
    
         
            +
                      dTypes[ sType ] = 1
         
     | 
| 
      
 145 
     | 
    
         
            +
                    end
         
     | 
| 
      
 146 
     | 
    
         
            +
                  elsif xTypes.is_a?(Hash)
         
     | 
| 
      
 147 
     | 
    
         
            +
                    xTypes.keys.each do |sType|
         
     | 
| 
      
 148 
     | 
    
         
            +
                      sType.strip!
         
     | 
| 
      
 149 
     | 
    
         
            +
                      dTypes[ sType ] = 1
         
     | 
| 
      
 150 
     | 
    
         
            +
                    end
         
     | 
| 
      
 151 
     | 
    
         
            +
                  elsif xTypes.is_a?(Array)
         
     | 
| 
      
 152 
     | 
    
         
            +
                    xTypes.each do |sType|
         
     | 
| 
      
 153 
     | 
    
         
            +
                      sType.strip!
         
     | 
| 
      
 154 
     | 
    
         
            +
                      dTypes[ sType ] = 1
         
     | 
| 
      
 155 
     | 
    
         
            +
                    end
         
     | 
| 
      
 156 
     | 
    
         
            +
                  end
         
     | 
| 
      
 157 
     | 
    
         
            +
                  if dTypes.keys.length == 0
         
     | 
| 
      
 158 
     | 
    
         
            +
                    Dir.entries(@sFsdbBaseDir).each do |sEntry|
         
     | 
| 
      
 159 
     | 
    
         
            +
                      next if sEntry =~ /^\.\.?$/
         
     | 
| 
      
 160 
     | 
    
         
            +
                      sPath = File.join(@sFsdbBaseDir,sEntry)
         
     | 
| 
      
 161 
     | 
    
         
            +
                      if Dir.exists?(sPath)
         
     | 
| 
      
 162 
     | 
    
         
            +
                        dTypes[ sEntry ] = 1
         
     | 
| 
      
 163 
     | 
    
         
            +
                      end
         
     | 
| 
      
 164 
     | 
    
         
            +
                    end
         
     | 
| 
      
 165 
     | 
    
         
            +
                  end
         
     | 
| 
      
 166 
     | 
    
         
            +
                  aIdsInfo   = []
         
     | 
| 
      
 167 
     | 
    
         
            +
                  dTypes.keys.each do |sType|
         
     | 
| 
      
 168 
     | 
    
         
            +
                    sDirType = File.join(@sFsdbBaseDir,sType)
         
     | 
| 
      
 169 
     | 
    
         
            +
                    next unless Dir.exists?(sDirType)
         
     | 
| 
      
 170 
     | 
    
         
            +
                    sTypeRe  = Regexp.escape(sType)
         
     | 
| 
      
 171 
     | 
    
         
            +
                    Dir.entries(sDirType).each do |sEntry|
         
     | 
| 
      
 172 
     | 
    
         
            +
                      if sEntry   =~ /^sf_#{sTypeRe}_(.+)\.json$/
         
     | 
| 
      
 173 
     | 
    
         
            +
                        sId       = $1
         
     | 
| 
      
 174 
     | 
    
         
            +
                        dInfo     = {:id => sId, :type => sType}
         
     | 
| 
      
 175 
     | 
    
         
            +
                        sPathJson = File.join(sDirType,sEntry)
         
     | 
| 
      
 176 
     | 
    
         
            +
                        if File.size(sPathJson) > 0
         
     | 
| 
      
 177 
     | 
    
         
            +
                          aIdsInfo.push(dInfo)
         
     | 
| 
      
 178 
     | 
    
         
            +
                        end
         
     | 
| 
      
 179 
     | 
    
         
            +
                      end
         
     | 
| 
      
 180 
     | 
    
         
            +
                    end
         
     | 
| 
      
 181 
     | 
    
         
            +
                  end
         
     | 
| 
      
 182 
     | 
    
         
            +
                  return aIdsInfo
         
     | 
| 
      
 183 
     | 
    
         
            +
                end
         
     | 
| 
       136 
184 
     | 
    
         
             
              end
         
     | 
| 
       137 
185 
     | 
    
         
             
            end
         
     | 
    
        data/salesforce_cache.gemspec
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            Gem::Specification.new do |s|
         
     | 
| 
       2 
2 
     | 
    
         
             
              s.name        = 'salesforce_cache'
         
     | 
| 
       3 
     | 
    
         
            -
              s.version     = '0.0. 
     | 
| 
       4 
     | 
    
         
            -
              s.date        = '2014-03- 
     | 
| 
      
 3 
     | 
    
         
            +
              s.version     = '0.0.8'
         
     | 
| 
      
 4 
     | 
    
         
            +
              s.date        = '2014-03-07'
         
     | 
| 
       5 
5 
     | 
    
         
             
              s.summary     = 'Salesforce Filesystem Cache'
         
     | 
| 
       6 
6 
     | 
    
         
             
              s.description = 'Filesystem cache manager for Salesforce sObjects and SOQL results'
         
     | 
| 
       7 
7 
     | 
    
         
             
              s.authors     = ['John Wang']
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,63 +1,53 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            --- !ruby/object:Gem::Specification 
     | 
| 
      
 1 
     | 
    
         
            +
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: salesforce_cache
         
     | 
| 
       3 
     | 
    
         
            -
            version: !ruby/object:Gem::Version 
     | 
| 
       4 
     | 
    
         
            -
               
     | 
| 
       5 
     | 
    
         
            -
              version: 0.0.7
         
     | 
| 
      
 3 
     | 
    
         
            +
            version: !ruby/object:Gem::Version
         
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.0.8
         
     | 
| 
       6 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       7 
     | 
    
         
            -
            authors: 
     | 
| 
      
 6 
     | 
    
         
            +
            authors:
         
     | 
| 
       8 
7 
     | 
    
         
             
            - John Wang
         
     | 
| 
       9 
8 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       10 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       11 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       12 
     | 
    
         
            -
             
     | 
| 
       13 
     | 
    
         
            -
            date: 2014-03-06 00:00:00 Z
         
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2014-03-07 00:00:00.000000000 Z
         
     | 
| 
       14 
12 
     | 
    
         
             
            dependencies: []
         
     | 
| 
       15 
     | 
    
         
            -
             
     | 
| 
       16 
13 
     | 
    
         
             
            description: Filesystem cache manager for Salesforce sObjects and SOQL results
         
     | 
| 
       17 
14 
     | 
    
         
             
            email: johncwang@gmail.com
         
     | 
| 
       18 
15 
     | 
    
         
             
            executables: []
         
     | 
| 
       19 
     | 
    
         
            -
             
     | 
| 
       20 
16 
     | 
    
         
             
            extensions: []
         
     | 
| 
       21 
     | 
    
         
            -
             
     | 
| 
       22 
17 
     | 
    
         
             
            extra_rdoc_files: []
         
     | 
| 
       23 
     | 
    
         
            -
             
     | 
| 
       24 
     | 
    
         
            -
            files: 
         
     | 
| 
      
 18 
     | 
    
         
            +
            files:
         
     | 
| 
       25 
19 
     | 
    
         
             
            - CHANGELOG.md
         
     | 
| 
       26 
20 
     | 
    
         
             
            - LICENSE
         
     | 
| 
       27 
21 
     | 
    
         
             
            - README.md
         
     | 
| 
       28 
22 
     | 
    
         
             
            - Rakefile
         
     | 
| 
       29 
23 
     | 
    
         
             
            - VERSION
         
     | 
| 
       30 
     | 
    
         
            -
            - salesforce_cache.gemspec
         
     | 
| 
       31 
24 
     | 
    
         
             
            - lib/salesforce_cache.rb
         
     | 
| 
       32 
25 
     | 
    
         
             
            - lib/salesforce_cache/client.rb
         
     | 
| 
       33 
26 
     | 
    
         
             
            - lib/salesforce_cache/rest_client.rb
         
     | 
| 
      
 27 
     | 
    
         
            +
            - salesforce_cache.gemspec
         
     | 
| 
       34 
28 
     | 
    
         
             
            - test/test_setup.rb
         
     | 
| 
       35 
29 
     | 
    
         
             
            homepage: http://johnwang.com/
         
     | 
| 
       36 
     | 
    
         
            -
            licenses: 
     | 
| 
      
 30 
     | 
    
         
            +
            licenses:
         
     | 
| 
       37 
31 
     | 
    
         
             
            - MIT
         
     | 
| 
      
 32 
     | 
    
         
            +
            metadata: {}
         
     | 
| 
       38 
33 
     | 
    
         
             
            post_install_message: 
         
     | 
| 
       39 
34 
     | 
    
         
             
            rdoc_options: []
         
     | 
| 
       40 
     | 
    
         
            -
             
     | 
| 
       41 
     | 
    
         
            -
            require_paths: 
         
     | 
| 
      
 35 
     | 
    
         
            +
            require_paths:
         
     | 
| 
       42 
36 
     | 
    
         
             
            - lib
         
     | 
| 
       43 
     | 
    
         
            -
            required_ruby_version: !ruby/object:Gem::Requirement 
     | 
| 
       44 
     | 
    
         
            -
               
     | 
| 
       45 
     | 
    
         
            -
              requirements: 
         
     | 
| 
      
 37 
     | 
    
         
            +
            required_ruby_version: !ruby/object:Gem::Requirement
         
     | 
| 
      
 38 
     | 
    
         
            +
              requirements:
         
     | 
| 
       46 
39 
     | 
    
         
             
              - - ">="
         
     | 
| 
       47 
     | 
    
         
            -
                - !ruby/object:Gem::Version 
     | 
| 
       48 
     | 
    
         
            -
                  version:  
     | 
| 
       49 
     | 
    
         
            -
            required_rubygems_version: !ruby/object:Gem::Requirement 
     | 
| 
       50 
     | 
    
         
            -
               
     | 
| 
       51 
     | 
    
         
            -
              requirements: 
         
     | 
| 
      
 40 
     | 
    
         
            +
                - !ruby/object:Gem::Version
         
     | 
| 
      
 41 
     | 
    
         
            +
                  version: '0'
         
     | 
| 
      
 42 
     | 
    
         
            +
            required_rubygems_version: !ruby/object:Gem::Requirement
         
     | 
| 
      
 43 
     | 
    
         
            +
              requirements:
         
     | 
| 
       52 
44 
     | 
    
         
             
              - - ">="
         
     | 
| 
       53 
     | 
    
         
            -
                - !ruby/object:Gem::Version 
     | 
| 
       54 
     | 
    
         
            -
                  version:  
     | 
| 
      
 45 
     | 
    
         
            +
                - !ruby/object:Gem::Version
         
     | 
| 
      
 46 
     | 
    
         
            +
                  version: '0'
         
     | 
| 
       55 
47 
     | 
    
         
             
            requirements: []
         
     | 
| 
       56 
     | 
    
         
            -
             
     | 
| 
       57 
48 
     | 
    
         
             
            rubyforge_project: 
         
     | 
| 
       58 
     | 
    
         
            -
            rubygems_version:  
     | 
| 
      
 49 
     | 
    
         
            +
            rubygems_version: 2.2.1
         
     | 
| 
       59 
50 
     | 
    
         
             
            signing_key: 
         
     | 
| 
       60 
     | 
    
         
            -
            specification_version:  
     | 
| 
      
 51 
     | 
    
         
            +
            specification_version: 4
         
     | 
| 
       61 
52 
     | 
    
         
             
            summary: Salesforce Filesystem Cache
         
     | 
| 
       62 
53 
     | 
    
         
             
            test_files: []
         
     | 
| 
       63 
     | 
    
         
            -
             
     |