X-Git-Url: http://git.ieval.ro/?a=blobdiff_plain;ds=inline;f=src%2Fro%2Fieval%2Ffonbot%2FUtils.java;h=ddb506bfdbabe17d80e81b002742ad2604c5146b;hb=e154bdfd76071b99635317ef8c7ab11918b88794;hp=d5e0f5bcf8de0d506748fedce0dbdaf143bf4e6d;hpb=8dfb76c9431dbf8401412cb92c7512e7dc3081a2;p=fonbot.git
diff --git a/src/ro/ieval/fonbot/Utils.java b/src/ro/ieval/fonbot/Utils.java
index d5e0f5b..ddb506b 100644
--- a/src/ro/ieval/fonbot/Utils.java
+++ b/src/ro/ieval/fonbot/Utils.java
@@ -24,6 +24,8 @@ import static ro.ieval.fonbot.R.string.the_second_argument_to_wipe_must_be;
import static ro.ieval.fonbot.R.string.unknown_command;
import static ro.ieval.fonbot.R.string.wipetype_should_be_one_of;
+import java.net.MalformedURLException;
+import java.net.URL;
import java.util.Arrays;
import java.util.Locale;
@@ -314,8 +316,8 @@ public final class Utils {
public static void sendMessage(final Context context, final Address address, final String message){
switch(address.protocol){
case HTTP:
- new SendHttpMessageAsyncTask(toNonNull(Arrays.asList(
- new Header("X-Action", "SEND "+address.data))), context).execute(message);
+ new HttpCallExecutableRunnable("/send", toNonNull(Arrays.asList(
+ new Header("X-Destination", toNonNull(address.data)))), context, null, message).execute();
break;
case SMS:
@@ -333,19 +335,6 @@ public final class Utils {
}
}
- /**
- * Parses a HTTP response message of the form (part1) part2
, returning part2
.
- *
- * @param message the raw HTTP response message
- * @return the extracted part
- */
- public static String parseHttpMessage(final String message){
- final int indexOfParen=message.indexOf(')');
- if(indexOfParen==-1)
- return message;
- return toNonNull(message.substring(indexOfParen+2));
- }
-
/**
* Splits a string into words.
*
@@ -406,6 +395,30 @@ public final class Utils {
context.startService(intent);
}
+ /**
+ * Gets the server URL according to the user preferences.
+ *
+ * @param context Context instance
+ * @param path URL path
+ * @return the server URL
+ * @throws MalformedURLException if the user preferences create an invalid URL
+ */
+ public static URL getServerURL(final Context context, final String path) throws MalformedURLException{
+ final String hostname=PreferenceManager.getDefaultSharedPreferences(context).getString("hostname", "fonbot.ieval.ro");
+ final int port=Integer.parseInt(PreferenceManager.getDefaultSharedPreferences(context).getString("port", "7777"));
+ final URL url=new URL("https", hostname, port, path);
+ return url;
+ }
+
+ /**
+ * Poll the server for pending commands.
+ *
+ * @param context Context instance
+ */
+ public static void pollServer(final Context context){
+ new HttpCallExecutableRunnable("/get", null, context, new PollResultCallback(context)).execute();
+ }
+
/**
* Executes a given command
*