Class: Wikidotrb::Module::Client
- Inherits:
-
Object
- Object
- Wikidotrb::Module::Client
- Defined in:
- lib/wikidotrb/module/client.rb
Instance Attribute Summary collapse
-
#amc_client
Returns the value of attribute amc_client.
-
#is_logged_in
Returns the value of attribute is_logged_in.
-
#private_message
readonly
Returns the value of attribute private_message.
-
#site
readonly
Returns the value of attribute site.
-
#user
readonly
Returns the value of attribute user.
-
#username
Returns the value of attribute username.
Instance Method Summary collapse
-
#finalize
Destructor.
-
#initialize(username: nil, password: nil, amc_config: nil, logging_level: "WARN") ⇒ Client
constructor
Core client.
-
#login_check
Login check.
- #to_s
Constructor Details
#initialize(username: nil, password: nil, amc_config: nil, logging_level: "WARN") ⇒ Client
Core client
101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 |
# File 'lib/wikidotrb/module/client.rb', line 101 def initialize(username: nil, password: nil, amc_config: nil, logging_level: "WARN") # First determine the logging level Wikidotrb::Common::Logger.level = logging_level # Initialize AMCClient @amc_client = Wikidotrb::Connector::AjaxModuleConnectorClient.new(site_name: "www", config: amc_config) # Initialize session-related variables @is_logged_in = false @username = nil # Login if username and password are specified if username && password Wikidotrb::Module::HTTPAuthentication.login(self, username, password) @is_logged_in = true @username = username end # Define methods @user = ClientUserMethods.new(self) @private_message = ClientPrivateMessageMethods.new(self) @site = ClientSiteMethods.new(self) end |
Instance Attribute Details
#amc_client
Returns the value of attribute amc_client.
97 98 99 |
# File 'lib/wikidotrb/module/client.rb', line 97 def amc_client @amc_client end |
#is_logged_in
Returns the value of attribute is_logged_in.
97 98 99 |
# File 'lib/wikidotrb/module/client.rb', line 97 def is_logged_in @is_logged_in end |
#private_message (readonly)
Returns the value of attribute private_message.
98 99 100 |
# File 'lib/wikidotrb/module/client.rb', line 98 def @private_message end |
#site (readonly)
Returns the value of attribute site.
98 99 100 |
# File 'lib/wikidotrb/module/client.rb', line 98 def site @site end |
#user (readonly)
Returns the value of attribute user.
98 99 100 |
# File 'lib/wikidotrb/module/client.rb', line 98 def user @user end |
#username
Returns the value of attribute username.
97 98 99 |
# File 'lib/wikidotrb/module/client.rb', line 97 def username @username end |
Instance Method Details
#finalize
Destructor
126 127 128 129 130 131 132 |
# File 'lib/wikidotrb/module/client.rb', line 126 def finalize return unless @is_logged_in Wikidotrb::Module::HTTPAuthentication.logout(self) @is_logged_in = false @username = nil end |
#login_check
Login check
139 140 141 142 143 |
# File 'lib/wikidotrb/module/client.rb', line 139 def login_check raise Wikidotrb::Common::Exceptions::LoginRequiredException, "Login is required to execute this function" unless @is_logged_in nil end |
#to_s
134 135 136 |
# File 'lib/wikidotrb/module/client.rb', line 134 def to_s "Client(username=#{@username}, is_logged_in=#{@is_logged_in})" end |