itrp 0.1.0 → 0.1.5

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/lib/itrp.rb CHANGED
@@ -23,7 +23,8 @@ raise %q{
23
23
  } unless ARGV.length==1
24
24
 
25
25
  HISTFILE=File.expand_path("~/.itrp_history")
26
- DEFAULT_PROMPT="iTRP> "
26
+ DEFAULT_PROMPT= "iTRP> "
27
+ MULTILINE_PROMPT="+ "
27
28
 
28
29
  class ITRPEnv
29
30
  attr_accessor :prompt
@@ -89,10 +90,15 @@ class Dispatches
89
90
  end
90
91
 
91
92
  # dispatch to correct plugin w/ context
93
+ node=nil
92
94
  [Appenv.context, :any].uniq.collect do |ctx|
93
95
  node = @cmd_roots[ctx].find_node(cmdline.strip.split(' '))
94
- node.enter(cmdline.strip) and return if node
96
+ if not node.is_root?
97
+ node.enter(cmdline.strip)
98
+ return
99
+ end
95
100
  end
101
+ node.notfound(cmdline) if node.is_root?
96
102
  end
97
103
 
98
104
  def reload
@@ -101,7 +107,7 @@ class Dispatches
101
107
  load(f)
102
108
  print('.')
103
109
  end
104
- print("done\n")
110
+ print("done\n\n")
105
111
  end
106
112
 
107
113
  def help
@@ -112,14 +118,16 @@ class Dispatches
112
118
  end
113
119
 
114
120
  def quit
121
+ savehistory
122
+ exit 0
123
+ end
115
124
 
125
+ def savehistory
116
126
  File.open( HISTFILE, "w") do |h|
117
127
  Readline::HISTORY.to_a.uniq.each do |l|
118
128
  h.write(l + "\n" )
119
129
  end
120
130
  end
121
-
122
- exit 0
123
131
  end
124
132
 
125
133
 
@@ -127,14 +135,28 @@ end
127
135
 
128
136
 
129
137
  dispatches = Dispatches.new()
130
- while cmd = Readline.readline(Appenv.prompt, true)
138
+ multiline = []
139
+ while cmd = Readline.readline(Appenv.prompt, false)
140
+
141
+ next if cmd.strip.empty?
142
+
131
143
  begin
132
- dispatches.invoke(cmd)
133
- Readline::HISTORY.push(cmd)
144
+ if cmd =~ /;\s*$/
145
+ multiline << cmd.match(/(.*);/)[1]
146
+ fullcmd = multiline.join()
147
+ dispatches.invoke(fullcmd)
148
+ Readline::HISTORY.push(fullcmd + ";" )
149
+ dispatches.savehistory
150
+ Appenv.prompt = DEFAULT_PROMPT
151
+ multiline = []
152
+ else
153
+ multiline << cmd
154
+ Appenv.prompt = MULTILINE_PROMPT
155
+ end
134
156
  rescue Exception => e
135
157
  if e.message == 'exit' ; exit; end
136
158
  puts "Error " + e.message
137
- puts "Error " + e.backtrace.join('\n')
159
+ puts "Error " + e.backtrace.join("\n")
138
160
  end
139
161
  end
140
162
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: itrp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - vivekrajan
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-12-07 00:00:00.000000000 Z
11
+ date: 2022-06-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: trisulrp
@@ -52,48 +52,34 @@ dependencies:
52
52
  - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
- - !ruby/object:Gem::Dependency
56
- name: rdoc
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: '3.12'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: '3.12'
69
55
  - !ruby/object:Gem::Dependency
70
56
  name: bundler
71
57
  requirement: !ruby/object:Gem::Requirement
72
58
  requirements:
73
- - - "~>"
59
+ - - ">="
74
60
  - !ruby/object:Gem::Version
75
- version: '1.0'
61
+ version: '0'
76
62
  type: :development
77
63
  prerelease: false
78
64
  version_requirements: !ruby/object:Gem::Requirement
79
65
  requirements:
80
- - - "~>"
66
+ - - ">="
81
67
  - !ruby/object:Gem::Version
82
- version: '1.0'
68
+ version: '0'
83
69
  - !ruby/object:Gem::Dependency
84
- name: jeweler
70
+ name: juwelier
85
71
  requirement: !ruby/object:Gem::Requirement
86
72
  requirements:
87
- - - "~>"
73
+ - - ">="
88
74
  - !ruby/object:Gem::Version
89
- version: 2.0.1
75
+ version: '0'
90
76
  type: :development
91
77
  prerelease: false
92
78
  version_requirements: !ruby/object:Gem::Requirement
93
79
  requirements:
94
- - - "~>"
80
+ - - ">="
95
81
  - !ruby/object:Gem::Version
96
- version: 2.0.1
82
+ version: '0'
97
83
  - !ruby/object:Gem::Dependency
98
84
  name: simplecov
99
85
  requirement: !ruby/object:Gem::Requirement
@@ -124,31 +110,41 @@ files:
124
110
  - README.rdoc
125
111
  - Rakefile
126
112
  - VERSION
113
+ - itrp.gemspec
127
114
  - lib/cmd_base.rb
128
115
  - lib/cmd_root.rb
116
+ - lib/handlers/agg_flow.rb
129
117
  - lib/handlers/alert.rb
130
118
  - lib/handlers/counter.rb
131
119
  - lib/handlers/delete_alerts.rb
120
+ - lib/handlers/edges.rb
132
121
  - lib/handlers/flow.rb
133
122
  - lib/handlers/fts.rb
134
- - lib/handlers/getkey.rb
135
123
  - lib/handlers/getlabel.rb
124
+ - lib/handlers/grep.rb
136
125
  - lib/handlers/help.rb
126
+ - lib/handlers/keyspace.rb
137
127
  - lib/handlers/list.rb
138
128
  - lib/handlers/list_counters.rb
139
129
  - lib/handlers/meters.rb
130
+ - lib/handlers/metric_summ.rb
140
131
  - lib/handlers/options.rb
132
+ - lib/handlers/pcap.rb
133
+ - lib/handlers/probe.rb
141
134
  - lib/handlers/query_alerts.rb
142
135
  - lib/handlers/query_flow.rb
143
136
  - lib/handlers/query_fts.rb
144
137
  - lib/handlers/query_resource.rb
145
- - lib/handlers/resolve.rb
146
138
  - lib/handlers/resource.rb
139
+ - lib/handlers/searchkey.rb
147
140
  - lib/handlers/set.rb
141
+ - lib/handlers/setlabel.rb
148
142
  - lib/handlers/timeslices.rb
149
143
  - lib/handlers/toppers.rb
144
+ - lib/handlers/toptrend.rb
150
145
  - lib/handlers/trackers.rb
151
146
  - lib/handlers/traffic.rb
147
+ - lib/handlers/volume.rb
152
148
  - lib/itrp.rb
153
149
  - test/helper.rb
154
150
  - test/test_itrp.rb
@@ -156,7 +152,7 @@ homepage: http://github.com/vivekrajan/itrp
156
152
  licenses:
157
153
  - MIT
158
154
  metadata: {}
159
- post_install_message:
155
+ post_install_message:
160
156
  rdoc_options: []
161
157
  require_paths:
162
158
  - lib
@@ -171,9 +167,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
171
167
  - !ruby/object:Gem::Version
172
168
  version: '0'
173
169
  requirements: []
174
- rubyforge_project:
175
- rubygems_version: 2.2.2
176
- signing_key:
170
+ rubygems_version: 3.2.32
171
+ signing_key:
177
172
  specification_version: 4
178
173
  summary: iTRP - Command Line Interface to Trisul Network Analytics
179
174
  test_files: []
@@ -1,38 +0,0 @@
1
- module ITRP
2
-
3
- class Cmd_getkey < Cmd
4
- def initialize (e)
5
- super(e)
6
- @enabled_in_state = :counter
7
- @attach_cmd = ''
8
- @trigger = 'getkey'
9
- end
10
-
11
-
12
-
13
- def enter(cmdline)
14
-
15
- patt = cmdline.scan(/getkey (.*)/).flatten
16
-
17
- print("Search [#{patt[0]}]\n")
18
- req =mk_request(TRP::Message::Command::SEARCH_KEYS_REQUEST,
19
- :counter_group => appstate(:cgguid),
20
- :label => patt[0])
21
-
22
-
23
- rows = []
24
- get_response_zmq(@appenv.zmq_endpt,req) do |resp|
25
- resp.keys.each do |k|
26
- rows << [ k.key, k.label, k.readable ]
27
- end
28
- end
29
-
30
-
31
- table = Terminal::Table.new( :headings => %w(Key Label Readable ), :rows => rows)
32
- puts(table)
33
-
34
- end
35
-
36
- end
37
- end
38
-
@@ -1,34 +0,0 @@
1
- module ITRP
2
-
3
- class Cmd_resolve < Cmd
4
- def initialize (e)
5
- super(e)
6
- @enabled_in_state = :counter
7
- @attach_cmd = ''
8
- @trigger = 'resolve'
9
- end
10
-
11
- def enter(cmdline)
12
-
13
- patt = cmdline.scan(/resolve\s+(\S*)/).flatten.first
14
-
15
- patt.split(',')
16
-
17
- req =mk_request(TRP::Message::Command::KEY_LOOKUP_REQUEST,
18
- :counter_group => appstate(:cgguid),
19
- :keys => patt.split(','))
20
-
21
-
22
- rows = []
23
- get_response_zmq(@appenv.zmq_endpt,req) do |resp|
24
- resp.keys.each do |k|
25
- rows << [ k.key, k.label, k.readable ]
26
- end
27
- end
28
-
29
- table = Terminal::Table.new( :headings => %w(Key Label Readable ), :rows => rows)
30
- puts(table)
31
- end
32
-
33
- end
34
- end