01: /*
02: * Licensed to the Apache Software Foundation (ASF) under one or more
03: * contributor license agreements. See the NOTICE file distributed with
04: * this work for additional information regarding copyright ownership.
05: * The ASF licenses this file to You under the Apache License, Version 2.0
06: * (the "License"); you may not use this file except in compliance with
07: * the License. You may obtain a copy of the License at
08: *
09: * http://www.apache.org/licenses/LICENSE-2.0
10: *
11: * Unless required by applicable law or agreed to in writing, software
12: * distributed under the License is distributed on an "AS IS" BASIS,
13: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: * See the License for the specific language governing permissions and
15: * limitations under the License.
16: *
17: */
18:
19: package org.apache.jmeter;
20:
21: import java.net.Authenticator;
22: import java.net.PasswordAuthentication;
23:
24: /**
25: * Provides JMeter the ability to use proxy servers that require username and
26: * password.
27: *
28: * @author Dion MCMURTRIE
29: * @version $Revision: 493779 $
30: */
31: public class ProxyAuthenticator extends Authenticator {
32: /** The username to authenticate with. */
33: private String userName;
34:
35: /** The password to authenticate with. */
36: private char password[];
37:
38: /**
39: * Create a ProxyAuthenticator with the specified username and password.
40: *
41: * @param userName
42: * the username to authenticate with
43: * @param password
44: * the password to authenticate with
45: */
46: public ProxyAuthenticator(String userName, String password) {
47: this .userName = userName;
48: this .password = password.toCharArray();
49: }
50:
51: /**
52: * Return a PasswordAuthentication instance using the userName and password
53: * specified in the constructor.
54: *
55: * @return a PasswordAuthentication instance to use for authenticating with
56: * the proxy
57: */
58: protected PasswordAuthentication getPasswordAuthentication() {
59: return new PasswordAuthentication(userName, password);
60: }
61: }
|