|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
06.01.2014, 20:55 | #1 |
Форумчанин
Регистрация: 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); |
07.01.2014, 00:08 | #2 |
Новичок
Джуниор
Регистрация: 09.10.2011
Сообщений: 0
|
аська 411-886-702
|
07.01.2014, 20:17 | #3 |
Форумчанин
Регистрация: 04.05.2009
Сообщений: 149
|
Тему можно закрывать исполнитель найден.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Перевести код программы с 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 |