Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
"Adding facility to differentiate between the iCal and JSON links"
  • Loading branch information
heysadboy committed Jun 22, 2017
1 parent 34b1cfd commit 9447256
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 6 deletions.
10 changes: 9 additions & 1 deletion app/src/main/java/org/splitbrain/giraffe/DBAdapter.java
Expand Up @@ -2,11 +2,14 @@

import android.content.ContentValues;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.res.AssetManager;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.preference.PreferenceManager;
import android.util.Log;
import android.widget.Toast;

import java.io.ByteArrayOutputStream;
Expand All @@ -20,7 +23,6 @@ public class DBAdapter {

private final DatabaseHelper DBHelper;
private SQLiteDatabase db = null;
;


public final static String EVENT_ID = "events._id";
Expand All @@ -35,6 +37,8 @@ public class DBAdapter {
public final static String URL = "url";
public final static String FAVORITE = "favorite";

SharedPreferences prefs;
private String type;
/**
* Database filed names as read in getEvent(s)
*/
Expand All @@ -51,6 +55,10 @@ public class DBAdapter {
};

public DBAdapter(Context context) {

prefs = PreferenceManager.getDefaultSharedPreferences(context);
type = prefs.getString("type", "");
Log.e("DB type",type);
DBHelper = new DatabaseHelper(context);
}

Expand Down
34 changes: 29 additions & 5 deletions app/src/main/java/org/splitbrain/giraffe/EventLoader.java
@@ -1,13 +1,18 @@
package org.splitbrain.giraffe;

import android.annotation.SuppressLint;
import android.content.SharedPreferences;
import android.os.AsyncTask;
import android.preference.PreferenceManager;
import android.util.Log;
import android.widget.Toast;

import org.splitbrain.simpleical.SimpleIcalEvent;
import org.splitbrain.simpleical.SimpleIcalParser;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Date;
Expand All @@ -24,6 +29,7 @@ public class EventLoader extends AsyncTask<URL, String, String> {
private final OptionsActivity context;
private DBAdapter db = null;
private boolean ignoreSSLCerts = false;
SharedPreferences prefs;

public EventLoader(OptionsActivity context) {
this.context = context;
Expand All @@ -39,6 +45,7 @@ public void setIgnoreSSLCerts(boolean ignoreSSLCerts) {

@Override
protected void onPreExecute() {
prefs = PreferenceManager.getDefaultSharedPreferences(context);
}

@Override
Expand Down Expand Up @@ -66,11 +73,6 @@ protected void onProgressUpdate(String... values) {
protected String doInBackground(URL... urls) {
int count = 0;

publishProgress("Opening database...");
db = new DBAdapter(context);
db.open();
db.begin();

// http://re-publica.de/11/rp2011.ics
try {
publishProgress("Connecting to URL...");
Expand All @@ -87,6 +89,28 @@ protected String doInBackground(URL... urls) {
}
InputStream inputStream = http.getInputStream();

BufferedReader r = new BufferedReader(new InputStreamReader(inputStream));
String line = r.readLine();

if(line.contains("BEGIN:VCALENDAR"))
{
SharedPreferences.Editor edit = prefs.edit();
edit.putString("type", "ical");
edit.commit();
Log.e("Response type","ical");
}
else if(line.contains("{"))
{
SharedPreferences.Editor edit = prefs.edit();
edit.putString("type", "json");
edit.commit();
Log.e("Response type","json");
}

publishProgress("Opening database...");
db = new DBAdapter(context);
db.open();
db.begin();

publishProgress("Clearing database...");
db.deleteEvents();
Expand Down

0 comments on commit 9447256

Please sign in to comment.