Android Open Source - playnomics-android Http Connection Factory From Project Back to project page playnomics-android .
License The source code is released under:
Apache License
If you think the Android project playnomics-android listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
Java Source Code package com.playnomics.android.client;
/ * f r o m w w w . j a v a 2 s . c o m * /
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLEncoder;
import java.util.TreeMap;
import com.playnomics.android.util.Logger;
import com.playnomics.android.util.Util;
import com.playnomics.android.util.Logger.LogLevel;
public class HttpConnectionFactory implements IHttpConnectionFactory {
private Logger logger;
public HttpConnectionFactory(Logger logger) {
this.logger = logger;
}
public HttpURLConnection startConnectionForUrl(String urlString)
throws IOException {
try {
URL url = new URL(urlString);
return ((HttpURLConnection) url.openConnection());
} catch (MalformedURLException ex) {
logger.log(LogLevel.WARNING, ex,
"Could not generate a valid URL from this String %s" ,
urlString);
return null;
}
}
public String buildUrl(String url, String path,
TreeMap<String, Object> queryParameters) {
if (Util.stringIsNullOrEmpty(url)) {
return null;
}
StringBuilder builder = new StringBuilder(url);
if (!Util.stringIsNullOrEmpty(path)) {
builder.append(url.endsWith("/" ) ? path : String
.format("/%s" , path));
}
try {
if (queryParameters != null) {
boolean hasQueryString = builder.toString().contains("?" );
boolean firstParam = true;
for (String key : queryParameters.keySet()) {
if (Util.stringIsNullOrEmpty(key)) {
continue ;
}
Object value = queryParameters.get(key);
if (value == null) {
continue ;
}
builder.append((!hasQueryString && firstParam) ? String
.format("?%s=%s" , key, URLEncoder.encode(
value.toString(), Util.UT8_ENCODING))
: String.format("&%s=%s" , key, URLEncoder.encode(
value.toString(), Util.UT8_ENCODING)));
firstParam = false;
}
}
} catch (UnsupportedEncodingException ex) {
logger.log(LogLevel.WARNING, ex, "Could not build URL" );
return null;
}
return builder.toString();
}
}
Java Source Code List com.playnomics.PlaynomicsMoreTestActivity.java com.playnomics.PlaynomicsTestAppActivity.java com.playnomics.RichDataFrameDelegate.java com.playnomics.android.client.AssetClient.java com.playnomics.android.client.EventQueue.java com.playnomics.android.client.EventWorker.java com.playnomics.android.client.HttpConnectionFactory.java com.playnomics.android.client.IEventQueue.java com.playnomics.android.client.IEventWorker.java com.playnomics.android.client.IHttpConnectionFactory.java com.playnomics.android.client.PlacementDataClient.java com.playnomics.android.client.SegmentationClient.java com.playnomics.android.events.AppPageEvent.java com.playnomics.android.events.AppPauseEvent.java com.playnomics.android.events.AppResumeEvent.java com.playnomics.android.events.AppRunningEvent.java com.playnomics.android.events.AppStartEvent.java com.playnomics.android.events.CustomEvent.java com.playnomics.android.events.ExplicitEvent.java com.playnomics.android.events.ImplicitEvent.java com.playnomics.android.events.PlaynomicsEvent.java com.playnomics.android.events.TransactionEvent.java com.playnomics.android.events.UserInfoEvent.java com.playnomics.android.messaging.CloseButton.java com.playnomics.android.messaging.HtmlAdFactory.java com.playnomics.android.messaging.HtmlAd.java com.playnomics.android.messaging.HtmlCloseButton.java com.playnomics.android.messaging.MessagingManager.java com.playnomics.android.messaging.NativeCloseButton.java com.playnomics.android.messaging.Placement.java com.playnomics.android.messaging.Position.java com.playnomics.android.messaging.Target.java com.playnomics.android.messaging.ui.IPlayViewFactory.java com.playnomics.android.messaging.ui.PlayDialog.java com.playnomics.android.messaging.ui.PlayViewFactory.java com.playnomics.android.messaging.ui.PlayWebView.java com.playnomics.android.messaging.ui.RenderTaskFactory.java com.playnomics.android.push.GcmBroadcastReceiver.java com.playnomics.android.push.GcmIntentService.java com.playnomics.android.push.GcmManager.java com.playnomics.android.sdk.IGoogleCloudMessageConfig.java com.playnomics.android.sdk.IPlacementDelegate.java com.playnomics.android.sdk.IPlaynomicsPlacementDelegate.java com.playnomics.android.sdk.IPlaynomicsPlacementRawDelegate.java com.playnomics.android.sdk.IPlaynomicsSegmentationDelegate.java com.playnomics.android.sdk.IPushConfig.java com.playnomics.android.sdk.IPushNotificationDelegate.java com.playnomics.android.sdk.Playnomics.java com.playnomics.android.segments.UserSegmentIds.java com.playnomics.android.session.ActivityObserver.java com.playnomics.android.session.GameSessionInfo.java com.playnomics.android.session.HeartBeatHandler.java com.playnomics.android.session.HeartBeatProducer.java com.playnomics.android.session.IActivityObserver.java com.playnomics.android.session.ICallbackProcessor.java com.playnomics.android.session.IHeartBeatProducer.java com.playnomics.android.session.SessionStateMachine.java com.playnomics.android.session.Session.java com.playnomics.android.session.TouchEventHandler.java com.playnomics.android.session.WindowCallbackProxy.java com.playnomics.android.util.AndroidLogger.java com.playnomics.android.util.AsyncTaskRunner.java com.playnomics.android.util.CacheFile.java com.playnomics.android.util.Config.java com.playnomics.android.util.ContextWrapper.java com.playnomics.android.util.EventTime.java com.playnomics.android.util.IAsyncCall.java com.playnomics.android.util.IConfig.java com.playnomics.android.util.IRandomGenerator.java com.playnomics.android.util.LargeGeneratedId.java com.playnomics.android.util.LogWriter.java com.playnomics.android.util.Logger.java com.playnomics.android.util.Util.java