Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Работа для программиста > Фриланс
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.01.2014, 20:55   #1
D_E_N
Форумчанин
 
Регистрация: 04.05.2009
Сообщений: 149
По умолчанию Перевести код из Java в Delphi

Всем привет. есть код модуля в котором генерируется SIG. Помогите пожалуйста перевести генерацию SIG на delphi.
Код:

package ru.auto.ara.networking;

import com.google.gson.Gson;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.lang.reflect.Type;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.UnknownHostException;
import java.security.MessageDigest;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.StatusLine;
import org.apache.http.client.ClientProtoc olException;
import org.apache.http.client.methods.Http Get;
import org.apache.http.client.utils.URIUti ls;
import org.apache.http.client.utils.URLEnc odedUtils;
import org.apache.http.conn.ConnectTimeout Exception;
import org.apache.http.impl.client.Default HttpClient;
import org.apache.http.message.BasicNameVa luePair;
import org.apache.http.params.BasicHttpPar ams;
import org.apache.http.params.HttpConnecti onParams;
import ru.auto.ara.models.AutoRuError;
import ru.auto.ara.models.AutoruResponse;
import ru.auto.ara.networking.json.GsonDec oderFactory;
import ru.auto.ara.networking.json.TypeDet ector;
import ru.auto.ara.util.DebugLog;

class RequestSender<ResultType>
{
static final String HEXES = "0123456789abcdef";
private static final String TAG = RequestSender.class.getSimpleName() ;
private RequestExectutor.RequestType requestType;

public RequestSender(RequestExectutor.Requ estType paramRequestType)
{
this.requestType = paramRequestType;
}

private String convertBytesToHexString(byte[] paramArrayOfByte)
{
if (paramArrayOfByte == null)
return null;
StringBuilder localStringBuilder = new StringBuilder(2 * paramArrayOfByte.length);
int i = paramArrayOfByte.length;
for (int j = 0; ; j++)
{
if (j >= i)
return localStringBuilder.toString();
int k = paramArrayOfByte[j];
localStringBuilder.append("01234567 89abcdef".charAt((k & 0xF0) >> 4)).append("0123456789abcdef".charA t(k & 0xF));
}
}

private ArrayList<NameValuePair> createDefaultParams()
{
ArrayList localArrayList = new ArrayList();
localArrayList.add(new BasicNameValuePair("format", "json"));
localArrayList.add(new BasicNameValuePair("version", "1"));
localArrayList.add(new BasicNameValuePair("key", "df517d9bf4acf8436422ad92442bc91778 8cbb58e8ed142f1e697ee8b8e26e39"));
localArrayList.add(new BasicNameValuePair("method", this.requestType.getMethodName()));
return localArrayList;
}

private URI createURIWithParams(List<NameValueP air> paramList)
{
try
{
URI localURI = URIUtils.createURI("http", "api.auto.ru", -1, "/rest", URLEncodedUtils.format(paramList, "UTF-8"), null);
return localURI;
}
catch (URISyntaxException localURISyntaxException)
{
DebugLog.e(TAG, localURISyntaxException.getMessage( ));
}
return null;
}

private String generateSignatureForParams(List<Nam eValuePair> paramList)
{
return getStringSignature((createURIWithPa rams(paramList).getRawQuery() + "2b70d69bc3088100d12d4d80682360d42c da32796967925ad6f118a5a00b3285").re place("&", ""));
}

private String getStringSignature(String paramString)
{
try
{
MessageDigest localMessageDigest = MessageDigest.getInstance("SHA-256");
localMessageDigest.update(paramStri ng.getBytes("UTF-8"));
String str = convertBytesToHexString(localMessag eDigest.digest());
return str;
}
catch (Throwable localThrowable)
{
throw localThrowable;
}
}

private void processError(AutoruResponse<ResultT ype> paramAutoruResponse)
{
AutoRuError localAutoRuError = paramAutoruResponse.getError();
if (localAutoRuError != null)
{
DebugLog.e(TAG, "Server error: Code=" + localAutoRuError.code + "; Message=" + localAutoRuError.message);
return;
}
paramAutoruResponse.setNothingCameE rror();
DebugLog.wtf(TAG, "Server error: No error and no result came from server");
}

private boolean wasSucessful(AutoruResponse<ResultT ype> paramAutoruResponse)
{
return (paramAutoruResponse.getError() == null) && (paramAutoruResponse.getResult() != null);
}

public AutoruResponse<ResultType> send(Map<String, String> paramMap)
{
ArrayList localArrayList = createDefaultParams();
Iterator localIterator = paramMap.entrySet().iterator();
AutoruResponse localAutoruResponse;
while (true)
{
DefaultHttpClient localDefaultHttpClient;
HttpGet localHttpGet;
if (!localIterator.hasNext())
{
String str = generateSignatureForParams(localArr ayList);
D_E_N вне форума Ответить с цитированием
Старый 07.01.2014, 00:08   #2
CrazyDave
Новичок
Джуниор
 
Регистрация: 09.10.2011
Сообщений: 0
По умолчанию

аська 411-886-702
CrazyDave вне форума Ответить с цитированием
Старый 07.01.2014, 20:17   #3
D_E_N
Форумчанин
 
Регистрация: 04.05.2009
Сообщений: 149
По умолчанию

Тему можно закрывать исполнитель найден.
D_E_N вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перевести код программы с Java на C. Любимая Помощь студентам 2 09.05.2013 15:15
Код Java перевести в Delphi. Rin Общие вопросы по Java, Java SE, Kotlin 2 20.03.2012 01:32
перевести код с Delphi в C++ Drunken_Sailor Общие вопросы C/C++ 1 18.05.2010 22:54
Перевести код из С++ на DELPHI JustKurt Фриланс 8 06.07.2009 16:31
перевести код с delphi на java. Neymexa Фриланс 1 21.11.2008 16:07