Class: Up::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/up/client.rb,
ext/up_ext/up_ext.c

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#envObject (readonly)

instance vars are set by the server



12
13
14
# File 'lib/up/client.rb', line 12

def env
  @env
end

#handlerObject

instance vars are set by the server



12
13
14
# File 'lib/up/client.rb', line 12

def handler
  @handler
end

#protocolObject (readonly)

instance vars are set by the server



12
13
14
# File 'lib/up/client.rb', line 12

def protocol
  @protocol
end

#timeoutObject (readonly)

instance vars are set by the server



12
13
14
# File 'lib/up/client.rb', line 12

def timeout
  @timeout
end

Instance Method Details

#closeObject



448
449
450
451
# File 'ext/up_ext/up_ext.c', line 448

def close
  @open = false
  `#@ws?.close()`
end

#open?Boolean

Returns:

  • (Boolean)


20
21
22
# File 'lib/up/client.rb', line 20

def open?
  @open
end

#pendingObject



456
457
458
459
# File 'ext/up_ext/up_ext.c', line 456

def pending
  return -1 unless @open
  `#@ws?.getBufferedAmount()`
end

#publish(channel, message) ⇒ Object



513
514
515
516
517
518
519
520
521
522
523
524
525
# File 'ext/up_ext/up_ext.c', line 513

def publish(channel, message)
  res = false
  %x{
    if (!message.$$is_string) {
      message = JSON.stringify(message);
    }
    res = #@server?.publish(channel, message);
    if (#@worker) {
      process.send({c: channel, m: message});
    }
  }
  res
end

#pubsub?Boolean

Returns:

  • (Boolean)


24
25
26
# File 'lib/up/client.rb', line 24

def pubsub?
  true
end

#subscribe(*args) ⇒ Object



541
542
543
544
# File 'ext/up_ext/up_ext.c', line 541

def subscribe(channel, is_pattern = false, &block)
  @sub_block = block
  `#@ws?.subscribe(channel)`
end

#unsubscribe(*args) ⇒ Object



569
570
571
# File 'ext/up_ext/up_ext.c', line 569

def unsubscribe(channel, is_pattern = false)
  `#@ws?.unsubscribe(channel)`
end

#write(rdata) ⇒ Object



555
556
557
# File 'ext/up_ext/up_ext.c', line 555

def write(data)
  `#@ws?.send(data, false)`
end