Class: Shell::ShellSession
  
  
  
  
  
    - Inherits:
 
    - 
      Object
      
        
          - Object
 
          
            - Shell::ShellSession
 
          
        
        show all
      
     
  
  
  
  
  
  
  
      - Includes:
 
      - Singleton
 
  
  
  
  
  
  
    - Defined in:
 
    - lib/chef/shell/shell_session.rb
 
  
  
 
  Instance Attribute Summary collapse
  
  
    
      Class Method Summary
      collapse
    
    
  
    
      Instance Method Summary
      collapse
    
    
  
  
  Constructor Details
  
    
  
  
    
Returns a new instance of ShellSession.
   
 
  
 
  
 
  
    Instance Attribute Details
    
      
      
      
  
  
    #client  ⇒ Object  
  
  
  
  
    
Returns the value of attribute client.
   
 
  
  
    
      
43
44
45 
     | 
    
      # File 'lib/chef/shell/shell_session.rb', line 43
def client
  @client
end 
     | 
  
 
    
      
      
      
  
  
    #compile  ⇒ Object 
  
  
  
  
    
Returns the value of attribute compile.
   
 
  
  
    
      
42
43
44 
     | 
    
      # File 'lib/chef/shell/shell_session.rb', line 42
def compile
  @compile
end 
     | 
  
 
    
      
      
      
  
  
    #json_configuration  ⇒ Object 
  
  
  
  
    
Returns the value of attribute json_configuration.
   
 
  
  
    
      
42
43
44 
     | 
    
      # File 'lib/chef/shell/shell_session.rb', line 42
def json_configuration
  @json_configuration
end 
     | 
  
 
    
      
      
      
  
  
    #node  ⇒ Object 
  
  
  
  
    
Returns the value of attribute node.
   
 
  
  
    
      
42
43
44 
     | 
    
      # File 'lib/chef/shell/shell_session.rb', line 42
def node
  @node
end 
     | 
  
 
    
      
      
      
  
  
    #node_attributes  ⇒ Object 
  
  
  
  
    
Returns the value of attribute node_attributes.
   
 
  
  
    
      
43
44
45 
     | 
    
      # File 'lib/chef/shell/shell_session.rb', line 43
def node_attributes
  @node_attributes
end 
     | 
  
 
    
      
      
      
  
  
    #recipe  ⇒ Object 
  
  
  
  
    
Returns the value of attribute recipe.
   
 
  
  
    
      
42
43
44 
     | 
    
      # File 'lib/chef/shell/shell_session.rb', line 42
def recipe
  @recipe
end 
     | 
  
 
    
      
      
      
  
  
    #run_context  ⇒ Object 
  
  
  
  
    
      
80
81
82 
     | 
    
      # File 'lib/chef/shell/shell_session.rb', line 80
def run_context
  @run_context ||= rebuild_context
end 
     | 
  
 
    
   
  
    Class Method Details
    
      
  
  
    .inspect  ⇒ Object 
  
  
  
  
    
rubocop:disable Lint/NestedMethodDefinition
   
 
  
  
    
      
133
134
135 
     | 
    
      # File 'lib/chef/shell/shell_session.rb', line 133
def @node.inspect   "<Chef::Node:0x#{object_id.to_s(16)} @name=\"#{name}\">"
end
     | 
  
 
    
      
  
  
    .session_type(type = nil)  ⇒ Object 
  
  
  
  
    
      
37
38
39
40 
     | 
    
      # File 'lib/chef/shell/shell_session.rb', line 37
def self.session_type(type = nil)
  @session_type = type if type
  @session_type
end 
     | 
  
 
    
   
  
    Instance Method Details
    
      
  
  
    #cookbook_loader  ⇒ Object 
  
  
  
  
    
      
88
89
90 
     | 
    
      # File 'lib/chef/shell/shell_session.rb', line 88
def cookbook_loader
  nil
end 
     | 
  
 
    
      
  
  
    #definitions  ⇒ Object 
  
  
  
  
    
      
84
85
86 
     | 
    
      # File 'lib/chef/shell/shell_session.rb', line 84
def definitions
  nil
end 
     | 
  
 
    
      
  
  
    #node_built?  ⇒ Boolean 
  
  
  
  
    
      
51
52
53 
     | 
    
      # File 'lib/chef/shell/shell_session.rb', line 51
def node_built?
  !!@node_built
end 
     | 
  
 
    
      
  
  
    #rebuild_context  ⇒ Object 
  
  
  
  
    
      
96
97
98 
     | 
    
      # File 'lib/chef/shell/shell_session.rb', line 96
def rebuild_context
  raise "Not Implemented! :rebuild_collection should be implemented by subclasses"
end 
     | 
  
 
    
      
    
      
  
  
    #resource_collection  ⇒ Object 
  
  
  
  
    
      
74
75
76 
     | 
    
      # File 'lib/chef/shell/shell_session.rb', line 74
def resource_collection
  run_context.resource_collection
end 
     | 
  
 
    
      
  
  
    #save_node  ⇒ Object 
  
  
  
  
    
      
92
93
94 
     | 
    
      # File 'lib/chef/shell/shell_session.rb', line 92
def save_node
  raise "Not Supported! #{self.class.name} doesn't support #save_node, maybe you need to run #{ChefUtils::Dist::Infra::SHELL} in client mode?"
end
     |