Java to Python
Banibrata Dutta
banibrata.dutta at gmail.com
Sat Feb 7 11:27:04 EST 2009
Jython is not an option ?
On Sat, Feb 7, 2009 at 9:54 PM, <zaheer.agadi at gmail.com> wrote:
> Hi
>
> I have a following class that is written Java and makes use of apache
> http client library,I am new to python can any one suggest me a python
> equivalent of this following class,
>
> Thanks ,
>
> public class Authenticate{
>
> private String storageUserName=null;
> private String storagePassword=null;
> private String authorization=null;
> private String identityHostName = null;
> private String identityPortNumber = null;
>
> private String accessKey=null;
> private String secretKey=null;
>
> public String getStoragePassword() {
> return storagePassword;
> }
>
> public void setStoragePassword(String storagePassword) {
> this.storagePassword = storagePassword;
> }
>
> public String getStorageUserName() {
> return storageUserName;
> }
>
> public void setStorageUserName(String storageUserName) {
> this.storageUserName = storageUserName;
> }
>
> public String getIdentityHostName() {
> return identityHostName;
> }
>
> public void setIdentityHostName(String identityHostName) {
> this.identityHostName = identityHostName;
> }
>
> public String getIdentityPortNumber() {
> return identityPortNumber;
> }
>
> public void setIdentityPortNumber(String identityPortNumber) {
> this.identityPortNumber = identityPortNumber;
> }
>
> public String getAccessKey() {
> return accessKey;
> }
>
> public void setAccessKey(String accessKey) {
> this.accessKey = accessKey;
> }
>
> public String getSecretKey() {
> return secretKey;
> }
>
> public void setSecretKey(String secretKey) {
> this.secretKey = secretKey;
> }
>
>
> /**
> * <p>Convenience string for Base 64 encoding.</p>
> */
> private static final String BASE64_CHARS =
> "ABCDEFGHIJKLMNOPQRSTUVWXYZ" +
> "abcdefghijklmnopqrstuvwxyz" +
> "0123456789+/";
>
> /**
> * <p>Encode the specified credentials into a String as required
> by
> * HTTP Basic Authentication (<a href="http://www.ietf.org/rfc/
> rfc2617.txt">RFC 2617</a>).</p>
> *
> * @param username Username to be encoded
> * @param password Password to be encoded
> * @return String string containing encoded username and password.
> */
> public String encodeCredentialsBasic(String username, String
> password) {
> String encode = username + ":" + password;
> int paddingCount = (3 - (encode.length() % 3)) % 3;
> encode += "\0\0".substring(0, paddingCount);
> StringBuilder encoded = new StringBuilder();
>
> for (int i = 0; i < encode.length(); i += 3) {
> }
> return encoded.toString();
> }
>
> public void fetchDetails(){
> HttpClient client=new HttpClient();
> //reqDetails = new RequestDetails();
> //String identityURL=MessageUtil.getMessage
> ("IDENTITY_INSTANCE");
> //int portNumber=Integer.parseInt(MessageUtil.getMessage
> ("IDENTITY_PORT"));
> authorization="Basic " + encodeCredentialsBasic
> (storageUserName, storagePassword);
> String url="https://"+identityHostName+
> ":"+identityPortNumber+"/test/ndcsd2/persons/"+UserName
> +"/attributes/";
>
> Protocol https=null;
> //try {
> https = new Protocol("https", new
> EasySSLProtocolSocketFactory(), Integer.parseInt(identityPortNumber));
> /*} catch (GeneralSecurityException ex) {
> Logger.getLogger(Authenticate.class.getName()).log
> (Level.SEVERE, null, ex);
> } catch (IOException ex) {
> Logger.getLogger(Authenticate.class.getName()).log
> (Level.SEVERE, null, ex);
> }*/
> Protocol.registerProtocol("https", https);
> GetMethod method=new GetMethod(url);
> method.setRequestHeader("Authorization",authorization);
> method.setRequestHeader("Accept","application/xml");
> try {
> int responseCode=client.executeMethod(method);
> if(responseCode==200){
> InputStream is=method.getResponseBodyAsStream();
> BufferedReader bis=new BufferedReader(new
> InputStreamReader(is));
> String temp=null,sKey=null, aKey=null;
> String accessKeySearchString="AccessKey</
> Name><Value>";
> String secretKeySearchString="SecretKey</
> Name><Value>";
> int searchStringLength=0;
> while((temp=bis.readLine())!=null){
> if(temp.indexOf(accessKeySearchString)!=-1){
> int beginIndex=temp.indexOf
> (accessKeySearchString);
> searchStringLength=accessKeySearchString.length
> ();
> int endIndex=temp.indexOf("</
> Value>",beginIndex);
> aKey=temp.substring(beginIndex
> +searchStringLength,endIndex);
> }
> if(temp.indexOf(secretKeySearchString)!=-1){
> int beginIndex=temp.indexOf
> (secretKeySearchString);
> searchStringLength=secretKeySearchString.length
> ();
> int endIndex=temp.indexOf("</
> Value>",beginIndex);
> sKey=temp.substring(beginIndex
> +searchStringLength,endIndex);
> }
> }
> setSecretKey(sKey);
> setAccessKey(aKey);
> } else {
> System.out.println("Not able to get the credentials.
> Returned : " + responseCode + " response code!!!");
> }
> } catch (IOException ex) {
> Logger.getLogger(Authenticate.class.getName()).log
> (Level.SEVERE, null, ex);
> }
> }
> --
> http://mail.python.org/mailman/listinfo/python-list
>
--
regards,
Banibrata
http://www.linkedin.com/in/bdutta
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20090207/2b046cd4/attachment.html>
More information about the Python-list
mailing list