147 lm_proxy_set_username (proxy, StringValuePtr (str_val)); |
147 lm_proxy_set_username (proxy, StringValuePtr (str_val)); |
148 |
148 |
149 return Qnil; |
149 return Qnil; |
150 } |
150 } |
151 |
151 |
|
152 VALUE |
|
153 proxy_get_password (VALUE self) |
|
154 { |
|
155 LmProxy *proxy = rb_lm_proxy_from_ruby_object (self); |
|
156 |
|
157 if (lm_proxy_get_password (proxy)) { |
|
158 return rb_str_new2 (lm_proxy_get_password (proxy)); |
|
159 } |
|
160 |
|
161 return Qnil; |
|
162 } |
|
163 |
|
164 VALUE |
|
165 proxy_set_password (VALUE self, VALUE password) |
|
166 { |
|
167 LmProxy *proxy = rb_lm_proxy_from_ruby_object (self); |
|
168 VALUE str_val; |
|
169 |
|
170 if (!rb_respond_to (password, rb_intern ("to_s"))) { |
|
171 rb_raise (rb_eArgError, "password should respond to to_s"); |
|
172 } |
|
173 |
|
174 str_val = rb_funcall (password, rb_intern ("to_s"), 0); |
|
175 lm_proxy_set_password (proxy, StringValuePtr (str_val)); |
|
176 |
|
177 return Qnil; |
|
178 } |
152 |
179 |
153 extern void |
180 extern void |
154 Init_lm_proxy (VALUE lm_mLM) |
181 Init_lm_proxy (VALUE lm_mLM) |
155 { |
182 { |
156 lm_cProxy = rb_define_class_under (lm_mLM, "Proxy", rb_cObject); |
183 lm_cProxy = rb_define_class_under (lm_mLM, "Proxy", rb_cObject); |
164 rb_define_method (lm_cProxy, "server=", proxy_set_server, 1); |
191 rb_define_method (lm_cProxy, "server=", proxy_set_server, 1); |
165 rb_define_method (lm_cProxy, "port", proxy_get_port, 0); |
192 rb_define_method (lm_cProxy, "port", proxy_get_port, 0); |
166 rb_define_method (lm_cProxy, "port=", proxy_set_port, 1); |
193 rb_define_method (lm_cProxy, "port=", proxy_set_port, 1); |
167 rb_define_method (lm_cProxy, "username", proxy_get_username, 0); |
194 rb_define_method (lm_cProxy, "username", proxy_get_username, 0); |
168 rb_define_method (lm_cProxy, "username=", proxy_set_username, 1); |
195 rb_define_method (lm_cProxy, "username=", proxy_set_username, 1); |
|
196 rb_define_method (lm_cProxy, "password", proxy_get_password, 0); |
|
197 rb_define_method (lm_cProxy, "password=", proxy_set_password, 1); |
169 } |
198 } |
170 |
199 |