Class: MysqlPR::Protocol::FieldPacket

Inherits:
Object
  • Object
show all
Defined in:
lib/mysql-pr/protocol.rb

Overview

Field packet

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(*args) ⇒ FieldPacket

Returns a new instance of FieldPacket.



881
882
883
# File 'lib/mysql-pr/protocol.rb', line 881

def initialize(*args)
  @db, @table, @org_table, @name, @org_name, @charsetnr, @length, @type, @flags, @decimals, @default = args
end

Instance Attribute Details

#charsetnrObject (readonly)

Returns the value of attribute charsetnr.



879
880
881
# File 'lib/mysql-pr/protocol.rb', line 879

def charsetnr
  @charsetnr
end

#dbObject (readonly)

Returns the value of attribute db.



879
880
881
# File 'lib/mysql-pr/protocol.rb', line 879

def db
  @db
end

#decimalsObject (readonly)

Returns the value of attribute decimals.



879
880
881
# File 'lib/mysql-pr/protocol.rb', line 879

def decimals
  @decimals
end

#defaultObject (readonly)

Returns the value of attribute default.



879
880
881
# File 'lib/mysql-pr/protocol.rb', line 879

def default
  @default
end

#flagsObject (readonly)

Returns the value of attribute flags.



879
880
881
# File 'lib/mysql-pr/protocol.rb', line 879

def flags
  @flags
end

#lengthObject (readonly)

Returns the value of attribute length.



879
880
881
# File 'lib/mysql-pr/protocol.rb', line 879

def length
  @length
end

#nameObject (readonly)

Returns the value of attribute name.



879
880
881
# File 'lib/mysql-pr/protocol.rb', line 879

def name
  @name
end

#org_nameObject (readonly)

Returns the value of attribute org_name.



879
880
881
# File 'lib/mysql-pr/protocol.rb', line 879

def org_name
  @org_name
end

#org_tableObject (readonly)

Returns the value of attribute org_table.



879
880
881
# File 'lib/mysql-pr/protocol.rb', line 879

def org_table
  @org_table
end

#tableObject (readonly)

Returns the value of attribute table.



879
880
881
# File 'lib/mysql-pr/protocol.rb', line 879

def table
  @table
end

#typeObject (readonly)

Returns the value of attribute type.



879
880
881
# File 'lib/mysql-pr/protocol.rb', line 879

def type
  @type
end

Class Method Details

.parse(pkt) ⇒ Object

Raises:



858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
# File 'lib/mysql-pr/protocol.rb', line 858

def self.parse(pkt)
  pkt.lcs
  db = pkt.lcs
  table = pkt.lcs
  org_table = pkt.lcs
  name = pkt.lcs
  org_name = pkt.lcs
  pkt.utiny
  charsetnr = pkt.ushort
  length = pkt.ulong
  type = pkt.utiny
  flags = pkt.ushort
  decimals = pkt.utiny
  f1 = pkt.ushort

  raise ProtocolError, "invalid packet: f1=#{f1}" unless f1.zero?

  default = pkt.lcs
  new(db, table, org_table, name, org_name, charsetnr, length, type, flags, decimals, default)
end