Class: Usps::Imis::CommandLine::Interface
- Inherits:
-
Object
- Object
- Usps::Imis::CommandLine::Interface
- Defined in:
- lib/usps/imis/command_line/interface.rb
Overview
Command line interface for the Api
Constant Summary collapse
- NAME =
'USPS iMIS API - Ruby'- RAW_HASH_RESPONSE_OPTIONS =
CLI options that indicate the response is a raw Hash rather than a Data object, and should not be simplified
%i[business_objects auth_token].freeze
Instance Attribute Summary collapse
-
#logger ⇒ Object
readonly
Tagged logger.
-
#options ⇒ Object
readonly
Options passed in from the command line.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize ⇒ Interface
constructor
A new instance of Interface.
- #run ⇒ Object
Constructor Details
Instance Attribute Details
#logger ⇒ Object (readonly)
Tagged logger
22 23 24 |
# File 'lib/usps/imis/command_line/interface.rb', line 22 def logger @logger end |
#options ⇒ Object (readonly)
Options passed in from the command line
18 19 20 |
# File 'lib/usps/imis/command_line/interface.rb', line 18 def @options end |
Class Method Details
.run ⇒ Object
24 |
# File 'lib/usps/imis/command_line/interface.rb', line 24 def self.run(...) = new(...).run |
Instance Method Details
#run ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/usps/imis/command_line/interface.rb', line 35 def run logger.info 'Running' logger.debug 'CLI Options:' logger.json(.dup.tap { it[:token] = '[FILTERED]' if it[:token] }) set_member result = simplify(perform!) output { result } result end |