groupdocs 1.5.1 → 1.5.2
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.
- data/CHANGELOG.md +6 -0
- data/examples/api-samples/Gemfile +2 -2
- data/lib/groupdocs/api/helpers/url_helper.rb +9 -9
- data/lib/groupdocs/api/request.rb +4 -2
- data/lib/groupdocs/storage/file.rb +4 -0
- data/lib/groupdocs/user.rb +99 -3
- data/lib/groupdocs/version.rb +1 -1
- data/spec/groupdocs/api/helpers/url_helper_spec.rb +2 -2
- data/spec/groupdocs/api/request_spec.rb +10 -4
- data/spec/groupdocs/user_spec.rb +75 -5
- data/spec/support/json/delete_account.json +10 -0
- data/spec/support/json/user_area.json +68 -0
- data/spec/support/json/user_get_embed_key.json +68 -0
- data/spec/support/json/user_login.json +68 -0
- metadata +12 -4
    
        data/CHANGELOG.md
    CHANGED
    
    
| @@ -30,15 +30,6 @@ module GroupDocs | |
| 30 30 | 
             
                      options[:path].gsub!(%r(//+), '/')
         | 
| 31 31 | 
             
                    end
         | 
| 32 32 |  | 
| 33 | 
            -
                    #
         | 
| 34 | 
            -
                    # Parses path replacing {{client_id}} with real one.
         | 
| 35 | 
            -
                    #
         | 
| 36 | 
            -
                    # @api private
         | 
| 37 | 
            -
                    #
         | 
| 38 | 
            -
                    def parse_path
         | 
| 39 | 
            -
                      options[:path].sub!(/\{\{client_id\}\}/, client_id)
         | 
| 40 | 
            -
                    end
         | 
| 41 | 
            -
             | 
| 42 33 | 
             
                    #
         | 
| 43 34 | 
             
                    # URL encodes path.
         | 
| 44 35 | 
             
                    #
         | 
| @@ -52,6 +43,15 @@ module GroupDocs | |
| 52 43 | 
             
                      options[:path].gsub!('+', '%2B')
         | 
| 53 44 | 
             
                    end
         | 
| 54 45 |  | 
| 46 | 
            +
                    #
         | 
| 47 | 
            +
                    # Parses path replacing {{client_id}} with real one.
         | 
| 48 | 
            +
                    #
         | 
| 49 | 
            +
                    # @api private
         | 
| 50 | 
            +
                    #
         | 
| 51 | 
            +
                    def replace_client_id
         | 
| 52 | 
            +
                      options[:path].sub!(/\{\{client_id\}\}/, client_id)
         | 
| 53 | 
            +
                    end
         | 
| 54 | 
            +
             | 
| 55 55 | 
             
                    #
         | 
| 56 56 | 
             
                    # Adds signature to path.
         | 
| 57 57 | 
             
                    #
         | 
| @@ -22,11 +22,15 @@ module GroupDocs | |
| 22 22 | 
             
                  # @example Upload file with description
         | 
| 23 23 | 
             
                  #   GroupDocs::Storage::File.upload!('resume.pdf', description: 'Resume')
         | 
| 24 24 | 
             
                  #
         | 
| 25 | 
            +
                  # @example Upload file with callback URL
         | 
| 26 | 
            +
                  #   GroupDocs::Storage::File.upload!('resume.pdf', callbackUrl: 'http://google.com')
         | 
| 27 | 
            +
                  #
         | 
| 25 28 | 
             
                  # @param [String] filepath Path to file to be uploaded
         | 
| 26 29 | 
             
                  # @param [Hash] options
         | 
| 27 30 | 
             
                  # @option options [String] path Folder path to upload to
         | 
| 28 31 | 
             
                  # @option options [String] name Name of file to be renamed
         | 
| 29 32 | 
             
                  # @option options [String] description File description
         | 
| 33 | 
            +
                  # @option options [String] callbackUrl will be called after file is uploaded
         | 
| 30 34 | 
             
                  # @param [Hash] access Access credentials
         | 
| 31 35 | 
             
                  # @option access [String] :client_id
         | 
| 32 36 | 
             
                  # @option access [String] :private_key
         | 
    
        data/lib/groupdocs/user.rb
    CHANGED
    
    | @@ -60,10 +60,39 @@ module GroupDocs | |
| 60 60 | 
             
                end
         | 
| 61 61 |  | 
| 62 62 | 
             
                #
         | 
| 63 | 
            -
                #  | 
| 63 | 
            +
                # Delete account user.
         | 
| 64 64 | 
             
                #
         | 
| 65 65 | 
             
                # @example
         | 
| 66 | 
            -
                #   GroupDocs::User. | 
| 66 | 
            +
                #   user = GroupDocs::User.get!
         | 
| 67 | 
            +
                #   GroupDocs::User.delete!(user.users!.last)
         | 
| 68 | 
            +
                #   #=> "826e3b54e009ce51"
         | 
| 69 | 
            +
                #
         | 
| 70 | 
            +
                # @param [GroupDocs::User] user
         | 
| 71 | 
            +
                # @param [Hash] access Access credentials
         | 
| 72 | 
            +
                # @option access [String] :client_id
         | 
| 73 | 
            +
                # @option access [String] :private_key
         | 
| 74 | 
            +
                # @return [String]
         | 
| 75 | 
            +
                #
         | 
| 76 | 
            +
                # @raise [ArgumentError] if user is not GroupDocs::User object
         | 
| 77 | 
            +
                #
         | 
| 78 | 
            +
                def self.delete!(user, access = {})
         | 
| 79 | 
            +
                  user.is_a?(GroupDocs::User) or raise ArgumentError,
         | 
| 80 | 
            +
                    "User should be GroupDocs::User object, received: #{user.inspect}"
         | 
| 81 | 
            +
             | 
| 82 | 
            +
                  json = Api::Request.new do |request|
         | 
| 83 | 
            +
                    request[:access] = access
         | 
| 84 | 
            +
                    request[:method] = :DELETE
         | 
| 85 | 
            +
                    request[:path] = "/mgmt/{{client_id}}/account/users/#{user.primary_email}"
         | 
| 86 | 
            +
                  end.execute!
         | 
| 87 | 
            +
             | 
| 88 | 
            +
                  json[:guid]
         | 
| 89 | 
            +
                end
         | 
| 90 | 
            +
             | 
| 91 | 
            +
                #
         | 
| 92 | 
            +
                # Generates new user embed key.
         | 
| 93 | 
            +
                #
         | 
| 94 | 
            +
                # @example
         | 
| 95 | 
            +
                #   GroupDocs::User.generate_embed_key!('test-area')
         | 
| 67 96 | 
             
                #   #=> "60a06ef8f23a49cf807977f1444fbdd8"
         | 
| 68 97 | 
             
                #
         | 
| 69 98 | 
             
                # @param [String] area
         | 
| @@ -72,7 +101,7 @@ module GroupDocs | |
| 72 101 | 
             
                # @option access [String] :private_key
         | 
| 73 102 | 
             
                # @return [String]
         | 
| 74 103 | 
             
                #
         | 
| 75 | 
            -
                def self. | 
| 104 | 
            +
                def self.generate_embed_key!(area, access = {})
         | 
| 76 105 | 
             
                  json = Api::Request.new do |request|
         | 
| 77 106 | 
             
                    request[:access] = access
         | 
| 78 107 | 
             
                    request[:method] = :GET
         | 
| @@ -82,6 +111,52 @@ module GroupDocs | |
| 82 111 | 
             
                  json[:key][:guid]
         | 
| 83 112 | 
             
                end
         | 
| 84 113 |  | 
| 114 | 
            +
                #
         | 
| 115 | 
            +
                # Get user embed key. Generate new embed key if area not exists.
         | 
| 116 | 
            +
                #
         | 
| 117 | 
            +
                # @example
         | 
| 118 | 
            +
                #   GroupDocs::User.get_embed_key!('test-area')
         | 
| 119 | 
            +
                #   #=> "60a06ef8f23a49cf807977f1444fbdd8"
         | 
| 120 | 
            +
                #
         | 
| 121 | 
            +
                # @param [String] area
         | 
| 122 | 
            +
                # @param [Hash] access Access credentials
         | 
| 123 | 
            +
                # @option access [String] :client_id
         | 
| 124 | 
            +
                # @option access [String] :private_key
         | 
| 125 | 
            +
                # @return [String]
         | 
| 126 | 
            +
                #
         | 
| 127 | 
            +
                def self.get_embed_key!(area, access = {})
         | 
| 128 | 
            +
                  json = Api::Request.new do |request|
         | 
| 129 | 
            +
                    request[:access] = access
         | 
| 130 | 
            +
                    request[:method] = :GET
         | 
| 131 | 
            +
                    request[:path] = "/mgmt/{{client_id}}/embedkey/#{area}"
         | 
| 132 | 
            +
                  end.execute!
         | 
| 133 | 
            +
             | 
| 134 | 
            +
                  json[:key][:guid]
         | 
| 135 | 
            +
                end
         | 
| 136 | 
            +
             | 
| 137 | 
            +
                #
         | 
| 138 | 
            +
                # Get area name by embed key.
         | 
| 139 | 
            +
                #
         | 
| 140 | 
            +
                # @example
         | 
| 141 | 
            +
                #   GroupDocs::User.area!('60a06eg8f23a49cf807977f1444fbdd8')
         | 
| 142 | 
            +
                #   #=> "test-area"
         | 
| 143 | 
            +
                #
         | 
| 144 | 
            +
                # @param [String] embed_key
         | 
| 145 | 
            +
                # @param [Hash] access Access credentials
         | 
| 146 | 
            +
                # @option access [String] :client_id
         | 
| 147 | 
            +
                # @option access [String] :private_key
         | 
| 148 | 
            +
                # @return [String]
         | 
| 149 | 
            +
                #
         | 
| 150 | 
            +
                def self.area!(embed_key, access = {})
         | 
| 151 | 
            +
                  json = Api::Request.new do |request|
         | 
| 152 | 
            +
                    request[:access] = access
         | 
| 153 | 
            +
                    request[:method] = :GET
         | 
| 154 | 
            +
                    request[:path] = "/mgmt/{{client_id}}/embedkey/guid/#{embed_key}"
         | 
| 155 | 
            +
                  end.execute!
         | 
| 156 | 
            +
             | 
| 157 | 
            +
                  json[:key][:area]
         | 
| 158 | 
            +
                end
         | 
| 159 | 
            +
             | 
| 85 160 | 
             
                #
         | 
| 86 161 | 
             
                # Returns an array of storage providers.
         | 
| 87 162 | 
             
                #
         | 
| @@ -107,6 +182,27 @@ module GroupDocs | |
| 107 182 | 
             
                  end
         | 
| 108 183 | 
             
                end
         | 
| 109 184 |  | 
| 185 | 
            +
                #
         | 
| 186 | 
            +
                # Logins user using user name and password.
         | 
| 187 | 
            +
                #
         | 
| 188 | 
            +
                # @example
         | 
| 189 | 
            +
                #   user = GroupDocs::User.login!('doe@john.com', 'password')
         | 
| 190 | 
            +
                #   user.first_name
         | 
| 191 | 
            +
                #   #=> "John"
         | 
| 192 | 
            +
                #
         | 
| 193 | 
            +
                # @return [GroupDocs::User]
         | 
| 194 | 
            +
                #
         | 
| 195 | 
            +
                def self.login!(email, password)
         | 
| 196 | 
            +
                  json = Api::Request.new do |request|
         | 
| 197 | 
            +
                    request[:sign] = false
         | 
| 198 | 
            +
                    request[:method] = :POST
         | 
| 199 | 
            +
                    request[:path] = "/shared/users/#{email}/logins"
         | 
| 200 | 
            +
                    request[:request_body] = password
         | 
| 201 | 
            +
                  end.execute!
         | 
| 202 | 
            +
             | 
| 203 | 
            +
                  new(json[:user])
         | 
| 204 | 
            +
                end
         | 
| 205 | 
            +
             | 
| 110 206 | 
             
                # @attr [Integer] id
         | 
| 111 207 | 
             
                attr_accessor :id
         | 
| 112 208 | 
             
                # @attr [String] guid
         | 
    
        data/lib/groupdocs/version.rb
    CHANGED
    
    
| @@ -34,11 +34,11 @@ describe GroupDocs::Api::Helpers::URL do | |
| 34 34 | 
             
                end
         | 
| 35 35 | 
             
              end
         | 
| 36 36 |  | 
| 37 | 
            -
              describe '# | 
| 37 | 
            +
              describe '#replace_client_id' do
         | 
| 38 38 | 
             
                it 'replaces {{client_id}} with real client ID' do
         | 
| 39 39 | 
             
                  subject.options[:path] = '/doc/{{client_id}}/files/123'
         | 
| 40 40 | 
             
                  subject.should_receive(:client_id).and_return('real_client_id')
         | 
| 41 | 
            -
                  subject.send(: | 
| 41 | 
            +
                  subject.send(:replace_client_id)
         | 
| 42 42 | 
             
                  subject.options[:path].should == '/doc/real_client_id/files/123'
         | 
| 43 43 | 
             
                end
         | 
| 44 44 | 
             
              end
         | 
| @@ -38,13 +38,19 @@ describe GroupDocs::Api::Request do | |
| 38 38 | 
             
              end
         | 
| 39 39 |  | 
| 40 40 | 
             
              describe '#prepare_and_sign_url' do
         | 
| 41 | 
            -
                it ' | 
| 42 | 
            -
                  subject.should_receive(: | 
| 41 | 
            +
                it 'URL encodes path' do
         | 
| 42 | 
            +
                  subject.should_receive(:url_encode_path)
         | 
| 43 43 | 
             
                  subject.prepare_and_sign_url
         | 
| 44 44 | 
             
                end
         | 
| 45 45 |  | 
| 46 | 
            -
                it ' | 
| 47 | 
            -
                  subject.should_receive(: | 
| 46 | 
            +
                it 'replaces client identifier path' do
         | 
| 47 | 
            +
                  subject.should_receive(:replace_client_id)
         | 
| 48 | 
            +
                  subject.prepare_and_sign_url
         | 
| 49 | 
            +
                end
         | 
| 50 | 
            +
             | 
| 51 | 
            +
                it 'does not replace client identifier path' do
         | 
| 52 | 
            +
                  subject.options[:sign] = false
         | 
| 53 | 
            +
                  subject.should_not_receive(:replace_client_id)
         | 
| 48 54 | 
             
                  subject.prepare_and_sign_url
         | 
| 49 55 | 
             
                end
         | 
| 50 56 |  | 
    
        data/spec/groupdocs/user_spec.rb
    CHANGED
    
    | @@ -42,20 +42,73 @@ describe GroupDocs::User do | |
| 42 42 | 
             
                end
         | 
| 43 43 | 
             
              end
         | 
| 44 44 |  | 
| 45 | 
            -
              describe '. | 
| 45 | 
            +
              describe '.delete!' do
         | 
| 46 | 
            +
                before(:each) do
         | 
| 47 | 
            +
                  mock_api_server(load_json('delete_account'))
         | 
| 48 | 
            +
                end
         | 
| 49 | 
            +
             | 
| 50 | 
            +
                let!(:user) { GroupDocs::User.new }
         | 
| 51 | 
            +
             | 
| 52 | 
            +
                it 'accepts access credentials hash' do
         | 
| 53 | 
            +
                  lambda do
         | 
| 54 | 
            +
                    described_class.delete!(user, :client_id => 'client_id', :private_key => 'private_key')
         | 
| 55 | 
            +
                  end.should_not raise_error(ArgumentError)
         | 
| 56 | 
            +
                end
         | 
| 57 | 
            +
             | 
| 58 | 
            +
                it 'raises error if user is not an instance of GroupDocs::User' do
         | 
| 59 | 
            +
                  lambda { described_class.delete!('user') }.should raise_error(ArgumentError)
         | 
| 60 | 
            +
                end
         | 
| 61 | 
            +
             | 
| 62 | 
            +
                it 'returns user guid' do
         | 
| 63 | 
            +
                  described_class.delete!(user).should be_a(String)
         | 
| 64 | 
            +
                end
         | 
| 65 | 
            +
              end
         | 
| 66 | 
            +
             | 
| 67 | 
            +
              describe '.generate_embed_key!' do
         | 
| 46 68 | 
             
                before(:each) do
         | 
| 47 69 | 
             
                  mock_api_server(load_json('user_embed_key'))
         | 
| 48 70 | 
             
                end
         | 
| 49 71 |  | 
| 50 72 | 
             
                it 'accepts access credentials hash' do
         | 
| 51 73 | 
             
                  lambda do
         | 
| 52 | 
            -
                    described_class. | 
| 74 | 
            +
                    described_class.generate_embed_key!('test-area', :client_id => 'client_id', :private_key => 'private_key')
         | 
| 53 75 | 
             
                  end.should_not raise_error(ArgumentError)
         | 
| 54 76 | 
             
                end
         | 
| 55 | 
            -
             | 
| 77 | 
            +
             | 
| 56 78 | 
             
                it 'returns new user embed key for defined area' do
         | 
| 57 | 
            -
                   | 
| 58 | 
            -
             | 
| 79 | 
            +
                  described_class.generate_embed_key!('test-area').should be_a(String)
         | 
| 80 | 
            +
                end
         | 
| 81 | 
            +
              end
         | 
| 82 | 
            +
             | 
| 83 | 
            +
              describe '.get_embed_key!' do
         | 
| 84 | 
            +
                before(:each) do
         | 
| 85 | 
            +
                  mock_api_server(load_json('user_get_embed_key'))
         | 
| 86 | 
            +
                end
         | 
| 87 | 
            +
             | 
| 88 | 
            +
                it 'accepts access credentials hash' do
         | 
| 89 | 
            +
                  lambda do
         | 
| 90 | 
            +
                    described_class.get_embed_key!('test-area', :client_id => 'client_id', :private_key => 'private_key')
         | 
| 91 | 
            +
                  end.should_not raise_error(ArgumentError)
         | 
| 92 | 
            +
                end
         | 
| 93 | 
            +
             | 
| 94 | 
            +
                it 'returns user embed key for defined area' do
         | 
| 95 | 
            +
                  described_class.get_embed_key!('test-area').should be_a(String)
         | 
| 96 | 
            +
                end
         | 
| 97 | 
            +
              end
         | 
| 98 | 
            +
             | 
| 99 | 
            +
              describe '.area!' do
         | 
| 100 | 
            +
                before(:each) do
         | 
| 101 | 
            +
                  mock_api_server(load_json('user_area'))
         | 
| 102 | 
            +
                end
         | 
| 103 | 
            +
             | 
| 104 | 
            +
                it 'accepts access credentials hash' do
         | 
| 105 | 
            +
                  lambda do
         | 
| 106 | 
            +
                    described_class.area!('60a06eg8f23a49cf807977f1444fbdd8', :client_id => 'client_id', :private_key => 'private_key')
         | 
| 107 | 
            +
                  end.should_not raise_error(ArgumentError)
         | 
| 108 | 
            +
                end
         | 
| 109 | 
            +
             | 
| 110 | 
            +
                it 'returns area name by defined embed key' do
         | 
| 111 | 
            +
                  described_class.area!('60a06eg8f23a49cf807977f1444fbdd8').should be_a(String)
         | 
| 59 112 | 
             
                end
         | 
| 60 113 | 
             
              end
         | 
| 61 114 |  | 
| @@ -78,6 +131,23 @@ describe GroupDocs::User do | |
| 78 131 | 
             
                  end
         | 
| 79 132 | 
             
                end
         | 
| 80 133 | 
             
              end
         | 
| 134 | 
            +
             | 
| 135 | 
            +
              describe '.login!' do
         | 
| 136 | 
            +
                before(:each) do
         | 
| 137 | 
            +
                  mock_api_server(load_json('user_login'))
         | 
| 138 | 
            +
                end
         | 
| 139 | 
            +
             | 
| 140 | 
            +
                it 'works without access credentials hash' do
         | 
| 141 | 
            +
                  lambda do
         | 
| 142 | 
            +
                    described_class.login!('doe@john.com', 'password')
         | 
| 143 | 
            +
                  end.should_not raise_error(ArgumentError)
         | 
| 144 | 
            +
                end
         | 
| 145 | 
            +
             | 
| 146 | 
            +
                it 'returns GroupDocs::User object' do
         | 
| 147 | 
            +
                  described_class.login!('doe@john.com', 'password').should be_a(GroupDocs::User)
         | 
| 148 | 
            +
                end
         | 
| 149 | 
            +
              end
         | 
| 150 | 
            +
             | 
| 81 151 | 
             
              it { should have_accessor(:id)                 }
         | 
| 82 152 | 
             
              it { should have_accessor(:guid)               }
         | 
| 83 153 | 
             
              it { should have_accessor(:nickname)           }
         | 
| @@ -0,0 +1,68 @@ | |
| 1 | 
            +
            {
         | 
| 2 | 
            +
              "result": {
         | 
| 3 | 
            +
                "key": {
         | 
| 4 | 
            +
                  "user": {
         | 
| 5 | 
            +
                    "nickname": "doe@john.com",
         | 
| 6 | 
            +
                    "firstname": "john",
         | 
| 7 | 
            +
                    "lastname": "doe",
         | 
| 8 | 
            +
                    "pkey": null,
         | 
| 9 | 
            +
                    "pswd_salt": "4b4Na2L2YQFWainXVfKOow==",
         | 
| 10 | 
            +
                    "claimed_id": null,
         | 
| 11 | 
            +
                    "token": "2639d85445430c3d05dc2c085356b9ab59bb156adda0f377be1d092b9402689b",
         | 
| 12 | 
            +
                    "storage": null,
         | 
| 13 | 
            +
                    "photo": null,
         | 
| 14 | 
            +
                    "active": false,
         | 
| 15 | 
            +
                    "trial": null,
         | 
| 16 | 
            +
                    "news_eanbled": false,
         | 
| 17 | 
            +
                    "alerts_eanbled": null,
         | 
| 18 | 
            +
                    "support_eanbled": null,
         | 
| 19 | 
            +
                    "support_email": null,
         | 
| 20 | 
            +
                    "annotation_branded": null,
         | 
| 21 | 
            +
                    "viewer_branded": null,
         | 
| 22 | 
            +
                    "is_real_time_broadcast_enabled": null,
         | 
| 23 | 
            +
                    "is_scroll_broadcast_enabled": null,
         | 
| 24 | 
            +
                    "is_zoom_broadcast_enabled": null,
         | 
| 25 | 
            +
                    "annotation_logo": null,
         | 
| 26 | 
            +
                    "pointer_tool_cursor": null,
         | 
| 27 | 
            +
                    "annotation_header_options": null,
         | 
| 28 | 
            +
                    "is_annotation_navigation_widget_enabled": null,
         | 
| 29 | 
            +
                    "is_annotation_zoom_widget_enabled": null,
         | 
| 30 | 
            +
                    "is_annotation_download_widget_enabled": null,
         | 
| 31 | 
            +
                    "is_annotation_print_widget_enabled": null,
         | 
| 32 | 
            +
                    "is_annotation_help_widget_enabled": null,
         | 
| 33 | 
            +
                    "is_right_panel_enabled": null,
         | 
| 34 | 
            +
                    "is_thumbnails_panel_enabled": null,
         | 
| 35 | 
            +
                    "is_standard_header_always_shown": null,
         | 
| 36 | 
            +
                    "is_toolbar_enabled": null,
         | 
| 37 | 
            +
                    "is_text_annotation_button_enabled": null,
         | 
| 38 | 
            +
                    "is_rectangle_annotation_button_enabled": null,
         | 
| 39 | 
            +
                    "is_point_annotation_button_enabled": null,
         | 
| 40 | 
            +
                    "is_strikeout_annotation_button_enabled": null,
         | 
| 41 | 
            +
                    "is_polyline_annotation_button_enabled": null,
         | 
| 42 | 
            +
                    "is_typewriter_annotation_button_enabled": null,
         | 
| 43 | 
            +
                    "is_watermark_annotation_button_enabled": null,
         | 
| 44 | 
            +
                    "viewer_logo": null,
         | 
| 45 | 
            +
                    "viewer_options": null,
         | 
| 46 | 
            +
                    "is_viewer_navigation_widget_enabled": null,
         | 
| 47 | 
            +
                    "is_viewer_zoom_widget_enabled": null,
         | 
| 48 | 
            +
                    "is_viewer_download_widget_enabled": null,
         | 
| 49 | 
            +
                    "is_viewer_print_widget_enabled": null,
         | 
| 50 | 
            +
                    "is_viewer_help_widget_enabled": null,
         | 
| 51 | 
            +
                    "signedupOn": 1352386502480,
         | 
| 52 | 
            +
                    "signedinOn": 1367051509957,
         | 
| 53 | 
            +
                    "signin_count": 740,
         | 
| 54 | 
            +
                    "roles": null,
         | 
| 55 | 
            +
                    "id": 3320,
         | 
| 56 | 
            +
                    "guid": "b912b34d1621a895",
         | 
| 57 | 
            +
                    "primary_email": "doe@john.com"
         | 
| 58 | 
            +
                  },
         | 
| 59 | 
            +
                  "guid": "5c4f5ac825cc618994e556d4a252b108",
         | 
| 60 | 
            +
                  "area": "test-area",
         | 
| 61 | 
            +
                  "active": true,
         | 
| 62 | 
            +
                  "hit_count": 2
         | 
| 63 | 
            +
                }
         | 
| 64 | 
            +
              },
         | 
| 65 | 
            +
              "status": "Ok",
         | 
| 66 | 
            +
              "error_message": null,
         | 
| 67 | 
            +
              "composedOn": 1367054382377
         | 
| 68 | 
            +
            }
         | 
| @@ -0,0 +1,68 @@ | |
| 1 | 
            +
            {
         | 
| 2 | 
            +
              "result": {
         | 
| 3 | 
            +
                "key": {
         | 
| 4 | 
            +
                  "user": {
         | 
| 5 | 
            +
                    "nickname": "doe@john.com",
         | 
| 6 | 
            +
                    "firstname": "john",
         | 
| 7 | 
            +
                    "lastname": "doe",
         | 
| 8 | 
            +
                    "pkey": null,
         | 
| 9 | 
            +
                    "pswd_salt": "4b4Na2L2YQFWainXVfKOow==",
         | 
| 10 | 
            +
                    "claimed_id": null,
         | 
| 11 | 
            +
                    "token": "2639d8544d430c3d05dc2c085556b9ab59bb156adda0f377be1d092b9402689b",
         | 
| 12 | 
            +
                    "storage": null,
         | 
| 13 | 
            +
                    "photo": null,
         | 
| 14 | 
            +
                    "active": false,
         | 
| 15 | 
            +
                    "trial": null,
         | 
| 16 | 
            +
                    "news_eanbled": false,
         | 
| 17 | 
            +
                    "alerts_eanbled": null,
         | 
| 18 | 
            +
                    "support_eanbled": null,
         | 
| 19 | 
            +
                    "support_email": null,
         | 
| 20 | 
            +
                    "annotation_branded": null,
         | 
| 21 | 
            +
                    "viewer_branded": null,
         | 
| 22 | 
            +
                    "is_real_time_broadcast_enabled": null,
         | 
| 23 | 
            +
                    "is_scroll_broadcast_enabled": null,
         | 
| 24 | 
            +
                    "is_zoom_broadcast_enabled": null,
         | 
| 25 | 
            +
                    "annotation_logo": null,
         | 
| 26 | 
            +
                    "pointer_tool_cursor": null,
         | 
| 27 | 
            +
                    "annotation_header_options": null,
         | 
| 28 | 
            +
                    "is_annotation_navigation_widget_enabled": null,
         | 
| 29 | 
            +
                    "is_annotation_zoom_widget_enabled": null,
         | 
| 30 | 
            +
                    "is_annotation_download_widget_enabled": null,
         | 
| 31 | 
            +
                    "is_annotation_print_widget_enabled": null,
         | 
| 32 | 
            +
                    "is_annotation_help_widget_enabled": null,
         | 
| 33 | 
            +
                    "is_right_panel_enabled": null,
         | 
| 34 | 
            +
                    "is_thumbnails_panel_enabled": null,
         | 
| 35 | 
            +
                    "is_standard_header_always_shown": null,
         | 
| 36 | 
            +
                    "is_toolbar_enabled": null,
         | 
| 37 | 
            +
                    "is_text_annotation_button_enabled": null,
         | 
| 38 | 
            +
                    "is_rectangle_annotation_button_enabled": null,
         | 
| 39 | 
            +
                    "is_point_annotation_button_enabled": null,
         | 
| 40 | 
            +
                    "is_strikeout_annotation_button_enabled": null,
         | 
| 41 | 
            +
                    "is_polyline_annotation_button_enabled": null,
         | 
| 42 | 
            +
                    "is_typewriter_annotation_button_enabled": null,
         | 
| 43 | 
            +
                    "is_watermark_annotation_button_enabled": null,
         | 
| 44 | 
            +
                    "viewer_logo": null,
         | 
| 45 | 
            +
                    "viewer_options": null,
         | 
| 46 | 
            +
                    "is_viewer_navigation_widget_enabled": null,
         | 
| 47 | 
            +
                    "is_viewer_zoom_widget_enabled": null,
         | 
| 48 | 
            +
                    "is_viewer_download_widget_enabled": null,
         | 
| 49 | 
            +
                    "is_viewer_print_widget_enabled": null,
         | 
| 50 | 
            +
                    "is_viewer_help_widget_enabled": null,
         | 
| 51 | 
            +
                    "signedupOn": 1352386502480,
         | 
| 52 | 
            +
                    "signedinOn": 1367051509957,
         | 
| 53 | 
            +
                    "signin_count": 740,
         | 
| 54 | 
            +
                    "roles": null,
         | 
| 55 | 
            +
                    "id": 3320,
         | 
| 56 | 
            +
                    "guid": "b912b34d1621a895",
         | 
| 57 | 
            +
                    "primary_email": "doe@john.com"
         | 
| 58 | 
            +
                  },
         | 
| 59 | 
            +
                  "guid": "5c3f5ac825cc418994e546d4e252b108",
         | 
| 60 | 
            +
                  "area": "test-area",
         | 
| 61 | 
            +
                  "active": true,
         | 
| 62 | 
            +
                  "hit_count": 2
         | 
| 63 | 
            +
                }
         | 
| 64 | 
            +
              },
         | 
| 65 | 
            +
              "status": "Ok",
         | 
| 66 | 
            +
              "error_message": null,
         | 
| 67 | 
            +
              "composedOn": 1367064373330
         | 
| 68 | 
            +
            }
         | 
| @@ -0,0 +1,68 @@ | |
| 1 | 
            +
            {
         | 
| 2 | 
            +
              "result": {
         | 
| 3 | 
            +
                "user": {
         | 
| 4 | 
            +
                  "nickname": "doe@john.com",
         | 
| 5 | 
            +
                  "firstname": "John",
         | 
| 6 | 
            +
                  "lastname": "Doe",
         | 
| 7 | 
            +
                  "pkey": "d21408c4a34422e7a711f6fb727b0299",
         | 
| 8 | 
            +
                  "pswd_salt": "P95rsFQTh+Tw2t98L/MRIw==",
         | 
| 9 | 
            +
                  "claimed_id": null,
         | 
| 10 | 
            +
                  "token": "c28a222f08f9baf1f2718257e81a64b013544a9f66b8f63dd5625872fcfd9b14",
         | 
| 11 | 
            +
                  "storage": null,
         | 
| 12 | 
            +
                  "photo": null,
         | 
| 13 | 
            +
                  "active": true,
         | 
| 14 | 
            +
                  "trial": true,
         | 
| 15 | 
            +
                  "news_eanbled": false,
         | 
| 16 | 
            +
                  "alerts_eanbled": null,
         | 
| 17 | 
            +
                  "support_eanbled": null,
         | 
| 18 | 
            +
                  "support_email": null,
         | 
| 19 | 
            +
                  "annotation_branded": null,
         | 
| 20 | 
            +
                  "viewer_branded": null,
         | 
| 21 | 
            +
                  "is_real_time_broadcast_enabled": null,
         | 
| 22 | 
            +
                  "is_scroll_broadcast_enabled": null,
         | 
| 23 | 
            +
                  "is_zoom_broadcast_enabled": null,
         | 
| 24 | 
            +
                  "annotation_logo": null,
         | 
| 25 | 
            +
                  "pointer_tool_cursor": null,
         | 
| 26 | 
            +
                  "annotation_header_options": null,
         | 
| 27 | 
            +
                  "is_annotation_navigation_widget_enabled": null,
         | 
| 28 | 
            +
                  "is_annotation_zoom_widget_enabled": null,
         | 
| 29 | 
            +
                  "is_annotation_download_widget_enabled": null,
         | 
| 30 | 
            +
                  "is_annotation_print_widget_enabled": null,
         | 
| 31 | 
            +
                  "is_annotation_help_widget_enabled": null,
         | 
| 32 | 
            +
                  "is_right_panel_enabled": null,
         | 
| 33 | 
            +
                  "is_thumbnails_panel_enabled": null,
         | 
| 34 | 
            +
                  "is_standard_header_always_shown": null,
         | 
| 35 | 
            +
                  "is_toolbar_enabled": null,
         | 
| 36 | 
            +
                  "is_text_annotation_button_enabled": null,
         | 
| 37 | 
            +
                  "is_rectangle_annotation_button_enabled": null,
         | 
| 38 | 
            +
                  "is_point_annotation_button_enabled": null,
         | 
| 39 | 
            +
                  "is_strikeout_annotation_button_enabled": null,
         | 
| 40 | 
            +
                  "is_polyline_annotation_button_enabled": null,
         | 
| 41 | 
            +
                  "is_typewriter_annotation_button_enabled": null,
         | 
| 42 | 
            +
                  "is_watermark_annotation_button_enabled": null,
         | 
| 43 | 
            +
                  "is_annotation_document_name_shown": null,
         | 
| 44 | 
            +
                  "viewer_logo": null,
         | 
| 45 | 
            +
                  "viewer_options": null,
         | 
| 46 | 
            +
                  "is_viewer_navigation_widget_enabled": null,
         | 
| 47 | 
            +
                  "is_viewer_zoom_widget_enabled": null,
         | 
| 48 | 
            +
                  "is_viewer_download_widget_enabled": null,
         | 
| 49 | 
            +
                  "is_viewer_print_widget_enabled": null,
         | 
| 50 | 
            +
                  "is_viewer_help_widget_enabled": null,
         | 
| 51 | 
            +
                  "is_viewer_document_name_shown": null,
         | 
| 52 | 
            +
                  "signedupOn": 1355129997970,
         | 
| 53 | 
            +
                  "signedinOn": 1370202497952,
         | 
| 54 | 
            +
                  "signin_count": 15,
         | 
| 55 | 
            +
                  "roles": null,
         | 
| 56 | 
            +
                  "signature_watermark_enabled": true,
         | 
| 57 | 
            +
                  "signature_desktop_notifications": true,
         | 
| 58 | 
            +
                  "webhook_notification_retries": null,
         | 
| 59 | 
            +
                  "webhook_notification_failed_recipients": null,
         | 
| 60 | 
            +
                  "id": 4062,
         | 
| 61 | 
            +
                  "guid": "9c7abce33263624e",
         | 
| 62 | 
            +
                  "primary_email": "doe@john.com"
         | 
| 63 | 
            +
                }
         | 
| 64 | 
            +
              },
         | 
| 65 | 
            +
              "status": "Ok",
         | 
| 66 | 
            +
              "error_message": null,
         | 
| 67 | 
            +
              "composedOn": 1370202497952
         | 
| 68 | 
            +
            }
         | 
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: groupdocs
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 1.5. | 
| 4 | 
            +
              version: 1.5.2
         | 
| 5 5 | 
             
              prerelease: 
         | 
| 6 6 | 
             
            platform: ruby
         | 
| 7 7 | 
             
            authors:
         | 
| @@ -9,7 +9,7 @@ authors: | |
| 9 9 | 
             
            autorequire: 
         | 
| 10 10 | 
             
            bindir: bin
         | 
| 11 11 | 
             
            cert_chain: []
         | 
| 12 | 
            -
            date: 2013- | 
| 12 | 
            +
            date: 2013-06-12 00:00:00.000000000 Z
         | 
| 13 13 | 
             
            dependencies:
         | 
| 14 14 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 15 15 | 
             
              name: rest-client
         | 
| @@ -417,6 +417,7 @@ files: | |
| 417 417 | 
             
            - spec/support/json/datasource_get.json
         | 
| 418 418 | 
             
            - spec/support/json/datasource_remove.json
         | 
| 419 419 | 
             
            - spec/support/json/datasource_update.json
         | 
| 420 | 
            +
            - spec/support/json/delete_account.json
         | 
| 420 421 | 
             
            - spec/support/json/document_access_info_get.json
         | 
| 421 422 | 
             
            - spec/support/json/document_convert.json
         | 
| 422 423 | 
             
            - spec/support/json/document_datasource.json
         | 
| @@ -486,7 +487,10 @@ files: | |
| 486 487 | 
             
            - spec/support/json/templates_all.json
         | 
| 487 488 | 
             
            - spec/support/json/templates_get.json
         | 
| 488 489 | 
             
            - spec/support/json/update_account.json
         | 
| 490 | 
            +
            - spec/support/json/user_area.json
         | 
| 489 491 | 
             
            - spec/support/json/user_embed_key.json
         | 
| 492 | 
            +
            - spec/support/json/user_get_embed_key.json
         | 
| 493 | 
            +
            - spec/support/json/user_login.json
         | 
| 490 494 | 
             
            - spec/support/json/user_profile_get.json
         | 
| 491 495 | 
             
            - spec/support/json/user_providers.json
         | 
| 492 496 | 
             
            - spec/support/json/user_roles.json
         | 
| @@ -514,7 +518,7 @@ required_ruby_version: !ruby/object:Gem::Requirement | |
| 514 518 | 
             
                  version: '0'
         | 
| 515 519 | 
             
                  segments:
         | 
| 516 520 | 
             
                  - 0
         | 
| 517 | 
            -
                  hash: - | 
| 521 | 
            +
                  hash: -387405820343720388
         | 
| 518 522 | 
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 519 523 | 
             
              none: false
         | 
| 520 524 | 
             
              requirements:
         | 
| @@ -523,7 +527,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 523 527 | 
             
                  version: '0'
         | 
| 524 528 | 
             
                  segments:
         | 
| 525 529 | 
             
                  - 0
         | 
| 526 | 
            -
                  hash: - | 
| 530 | 
            +
                  hash: -387405820343720388
         | 
| 527 531 | 
             
            requirements: []
         | 
| 528 532 | 
             
            rubyforge_project: 
         | 
| 529 533 | 
             
            rubygems_version: 1.8.23
         | 
| @@ -607,6 +611,7 @@ test_files: | |
| 607 611 | 
             
            - spec/support/json/datasource_get.json
         | 
| 608 612 | 
             
            - spec/support/json/datasource_remove.json
         | 
| 609 613 | 
             
            - spec/support/json/datasource_update.json
         | 
| 614 | 
            +
            - spec/support/json/delete_account.json
         | 
| 610 615 | 
             
            - spec/support/json/document_access_info_get.json
         | 
| 611 616 | 
             
            - spec/support/json/document_convert.json
         | 
| 612 617 | 
             
            - spec/support/json/document_datasource.json
         | 
| @@ -676,7 +681,10 @@ test_files: | |
| 676 681 | 
             
            - spec/support/json/templates_all.json
         | 
| 677 682 | 
             
            - spec/support/json/templates_get.json
         | 
| 678 683 | 
             
            - spec/support/json/update_account.json
         | 
| 684 | 
            +
            - spec/support/json/user_area.json
         | 
| 679 685 | 
             
            - spec/support/json/user_embed_key.json
         | 
| 686 | 
            +
            - spec/support/json/user_get_embed_key.json
         | 
| 687 | 
            +
            - spec/support/json/user_login.json
         | 
| 680 688 | 
             
            - spec/support/json/user_profile_get.json
         | 
| 681 689 | 
             
            - spec/support/json/user_providers.json
         | 
| 682 690 | 
             
            - spec/support/json/user_roles.json
         |