Module: Universa

Included in:
Client, Connection
Defined in:
lib/universa.rb,
lib/universa/umi.rb,
lib/universa/keys.rb,
lib/universa/tools.rb,
lib/universa/binder.rb,
lib/universa/client.rb,
lib/universa/errors.rb,
lib/universa/service.rb,
lib/universa/version.rb,
lib/universa/contract.rb,
lib/universa/chain_store.rb,
lib/universa/string_utils.rb,
lib/universa/weak_reference.rb,
lib/universa/stored_contract.rb

Overview

The Universa gem

Currently, only direct access to the Java API is available:

  • class UMI. Use it to get direct access to the Java API

Ruby-wrappers and tools are not yet available. Still direct access could be all you need at the time.

Defined Under Namespace

Modules: FSStore, Parallel Classes: Binder, ChainStore, ChangeOwnerPermission, Client, Connection, Contract, ContractState, Error, HashId, IllegalStateError, InterchangeError, KeyAddress, NetworkError, NodeInfo, NotFoundError, PrivateKey, PublicKey, Ref, ReferenceCreationData, RemoteAdapter, RevokePermission, Role, Service, SmartHash, SplitJoinPermission, StoreError, StoredContract, UMI, WeakReference

Constant Summary collapse

VERSION =

Current gem version

"0.2.1"

Instance Method Summary collapse

Instance Method Details

#retry_with_timeout(max_timeout = 25, max_times = 3, &block) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
# File 'lib/universa/tools.rb', line 10

def retry_with_timeout(max_timeout = 25, max_times = 3, &block)
  attempt = 0
  begin
    Timeout::timeout(max_timeout, &block)
  rescue
    attempt += 1
    puts "timeout: retry (#$!): #{attempt}"
    retry if attempt < max_times
    raise
  end
end