Class: Fit::FitProtocol
- Inherits:
-
Object
- Object
- Fit::FitProtocol
- Defined in:
- lib/fit/fit_protocol.rb
Class Method Summary collapse
- .format_number(size) ⇒ Object
- .read(bytes, input) ⇒ Object
- .read_counts(input) ⇒ Object
- .read_document(input) ⇒ Object
- .read_size(input) ⇒ Object
- .write_counts(counts, output) ⇒ Object
- .write_document(document, output) ⇒ Object
- .write_size(size, output) ⇒ Object
Class Method Details
.format_number(size) ⇒ Object
51 52 53 54 55 56 57 58 59 |
# File 'lib/fit/fit_protocol.rb', line 51 def FitProtocol.format_number(size) number_of_zeros = 10 - size.to_s.size formatted_value = "" number_of_zeros.times do formatted_value << '0' end formatted_value << size.to_s return formatted_value end |
.read(bytes, input) ⇒ Object
12 13 14 15 |
# File 'lib/fit/fit_protocol.rb', line 12 def FitProtocol.read(bytes, input) value = input.read(bytes) return value end |
.read_counts(input) ⇒ Object
22 23 24 25 26 27 28 29 |
# File 'lib/fit/fit_protocol.rb', line 22 def FitProtocol.read_counts(input) counts = Counts.new counts.right = FitProtocol.read_size(input) counts.wrong = FitProtocol.read_size(input) counts.ignores = FitProtocol.read_size(input) counts.exceptions = FitProtocol.read_size(input) return counts end |
.read_document(input) ⇒ Object
17 18 19 20 |
# File 'lib/fit/fit_protocol.rb', line 17 def FitProtocol.read_document(input) byte_count = read_size(input) return read(byte_count, input) end |
.read_size(input) ⇒ Object
7 8 9 10 |
# File 'lib/fit/fit_protocol.rb', line 7 def FitProtocol.read_size(input) str_value = read(10, input) return str_value.to_i end |
.write_counts(counts, output) ⇒ Object
43 44 45 46 47 48 49 |
# File 'lib/fit/fit_protocol.rb', line 43 def FitProtocol.write_counts(counts, output) FitProtocol.write_size(0, output) FitProtocol.write_size(counts.right, output) FitProtocol.write_size(counts.wrong, output) FitProtocol.write_size(counts.ignores, output) FitProtocol.write_size(counts.exceptions, output) end |
.write_document(document, output) ⇒ Object
37 38 39 40 41 |
# File 'lib/fit/fit_protocol.rb', line 37 def FitProtocol.write_document(document, output) FitProtocol.write_size(document.size, output) output.write(document) output.flush end |
.write_size(size, output) ⇒ Object
31 32 33 34 35 |
# File 'lib/fit/fit_protocol.rb', line 31 def FitProtocol.write_size(size, output) formatted_size = FitProtocol.format_number(size) output.write(formatted_size) output.flush end |