Skip to content

Commit a9c883f

Browse files
committed
fixes to clean up code
1 parent fda73bf commit a9c883f

File tree

7 files changed

+121
-36
lines changed

7 files changed

+121
-36
lines changed

SearchDemo/src/com/oreilly/demo/android/pa/searchdemo/CustomSearchSuggestionProvider.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33
import android.content.SearchRecentSuggestionsProvider;
44

55
public class CustomSearchSuggestionProvider extends SearchRecentSuggestionsProvider {
6-
public final static String AUTHORITY = "com.oreilly.demo.android.pa.searchdemo.CustomSearchSuggestionProvider";
6+
public final static String AUTHORITY =
7+
"com.oreilly.demo.android.pa.searchdemo.CustomSearchSuggestionProvider";
78
public final static int MODE = DATABASE_MODE_QUERIES;
89

910
public CustomSearchSuggestionProvider() {

SearchDemo/src/com/oreilly/demo/android/pa/searchdemo/MainActivity.java

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -31,33 +31,42 @@ public void onClick(View v) {
3131
});
3232

3333
if(getResources().getBoolean(R.bool.UseDBSearchLogic)) {
34-
((android.widget.TextView) findViewById(R.id.searchlogictext)).setText("Using SearchDBLogic (DB Based Search)");
34+
((android.widget.TextView) findViewById(R.id.searchlogictext)).
35+
setText("Using SearchDBLogic (DB Based Search)");
3536
} else {
36-
((android.widget.TextView) findViewById(R.id.searchlogictext)).setText("Using SearchLogic (Basic Index System)");
37+
((android.widget.TextView) findViewById(R.id.searchlogictext)).
38+
setText("Using SearchLogic (Basic Index System)");
3739
}
3840
}
3941

4042
@Override
4143
public boolean onCreateOptionsMenu(Menu menu) {
4244

4345
// check to see if we are using Android 3.0+
44-
if(android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.HONEYCOMB) {
46+
if(android.os.Build.VERSION.SDK_INT >=
47+
android.os.Build.VERSION_CODES.HONEYCOMB) {
4548
// Inflate the options menu from XML
4649
MenuInflater inflater = getMenuInflater();
4750
inflater.inflate(R.menu.search_menu, menu);
4851

4952
// Get the SearchView and set the searchable configuration
50-
SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
51-
SearchView searchView = (SearchView) menu.findItem(R.id.menu_search).getActionView();
53+
SearchManager searchManager =
54+
(SearchManager) getSystemService(Context.SEARCH_SERVICE);
55+
SearchView searchView =
56+
(SearchView) menu.findItem(R.id.menu_search).getActionView();
5257
searchView.setSearchableInfo(searchManager.getSearchableInfo(getComponentName()));
53-
searchView.setIconifiedByDefault(false); // Do not iconify the widget; expand it by default
58+
// Do not iconify the widget; expand it by default
59+
searchView.setIconifiedByDefault(false);
5460
}
5561

5662
MenuItem clearhistory = menu.add(Menu.NONE,Menu.NONE,1, R.string.menu_clearhistory);
5763
clearhistory.setIcon(android.R.drawable.ic_delete);
5864
clearhistory.setOnMenuItemClickListener(new OnMenuItemClickListener() {
5965
public boolean onMenuItemClick(MenuItem _menuItem) {
60-
SearchRecentSuggestions suggestions = new SearchRecentSuggestions(getBaseContext(), CustomSearchSuggestionProvider.AUTHORITY, CustomSearchSuggestionProvider.MODE);
66+
SearchRecentSuggestions suggestions =
67+
new SearchRecentSuggestions(getBaseContext(),
68+
CustomSearchSuggestionProvider.AUTHORITY,
69+
CustomSearchSuggestionProvider.MODE);
6170
suggestions.clearHistory();
6271
return true;
6372
}

SearchDemo/src/com/oreilly/demo/android/pa/searchdemo/SearchActivity.java

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,8 @@ public static void initializeSearchLogic(Context context) throws Exception {
3131

3232
public static void initializeSearchLogic(Context context, int resourceId) throws Exception {
3333
if(SEARCHLOGIC == null) {
34-
// if UseDBSearchLogic (in res/values/bool.xml) is true then use the SearchDBLogic else use SearchLogic
34+
// if UseDBSearchLogic (in res/values/bool.xml)
35+
// is true then use the SearchDBLogic else use SearchLogic
3536

3637
SEARCHLOGIC = context.getResources().getBoolean(R.bool.UseDBSearchLogic) ?
3738
new SearchDBLogic(context, resourceId) :
@@ -65,7 +66,10 @@ private void loadView(Sonnet son) {
6566
txt.setText("Sonnet ".intern() + son.title);
6667
txt.setVisibility(View.VISIBLE);
6768
for(int i=0;i<son.lines.length;i++) {
68-
TextView tline = (TextView) findViewById(getResources().getIdentifier(("line".intern()) + (i+1), "id".intern(), getPackageName()));
69+
TextView tline = (TextView)
70+
findViewById(getResources().getIdentifier(("line".intern()) +
71+
(i+1),
72+
"id".intern(), getPackageName()));
6973
if(tline != null) {
7074
tline.setText(son.lines[i]);
7175
tline.setVisibility(View.VISIBLE);
@@ -111,16 +115,21 @@ public void handleMessage(Message msg) {
111115

112116
private void search(String query) {
113117
if(query != null) {
114-
SearchRecentSuggestions suggestions = new SearchRecentSuggestions(this, CustomSearchSuggestionProvider.AUTHORITY, CustomSearchSuggestionProvider.MODE);
118+
SearchRecentSuggestions suggestions =
119+
new SearchRecentSuggestions(this,
120+
CustomSearchSuggestionProvider.AUTHORITY,
121+
CustomSearchSuggestionProvider.MODE);
115122
suggestions.saveRecentQuery(query, null);
116123

117124
final SonnetFragment[] sfrags = SEARCHLOGIC.search(query);
118125

119126
if(sfrags != null && sfrags.length > 0) {
120127
getListView().setVisibility(View.VISIBLE);
121-
getListView().addHeaderView(View.inflate(this, R.layout.searchheader, null), null, false);
128+
getListView().addHeaderView(View.inflate(this, R.layout.searchheader, null),
129+
null, false);
122130

123-
ArrayAdapter<SonnetFragment> arr = new ArrayAdapter<SonnetFragment>(this, R.layout.searchrow, sfrags);
131+
ArrayAdapter<SonnetFragment> arr =
132+
new ArrayAdapter<SonnetFragment>(this, R.layout.searchrow, sfrags);
124133
setListAdapter(arr);
125134
getListView().setOnItemClickListener(new OnItemClickListener() {
126135
public void onItemClick(AdapterView<?> adpt, View view, int pos, long id) {
@@ -166,7 +175,10 @@ public boolean onMenuItemClick(MenuItem _menuItem) {
166175
clearhistory.setIcon(android.R.drawable.ic_delete);
167176
clearhistory.setOnMenuItemClickListener(new OnMenuItemClickListener() {
168177
public boolean onMenuItemClick(MenuItem _menuItem) {
169-
SearchRecentSuggestions suggestions = new SearchRecentSuggestions(getBaseContext(), CustomSearchSuggestionProvider.AUTHORITY, CustomSearchSuggestionProvider.MODE);
178+
SearchRecentSuggestions suggestions =
179+
new SearchRecentSuggestions(getBaseContext(),
180+
CustomSearchSuggestionProvider.AUTHORITY,
181+
CustomSearchSuggestionProvider.MODE);
170182
suggestions.clearHistory();
171183
return true;
172184
}

SearchDemo/src/com/oreilly/demo/android/pa/searchdemo/SearchDB.java

Lines changed: 31 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,11 @@ public class SearchDB {
2020
public static final String SONNETSTR = "SONNETSTR";
2121
public static final String LINENUM = "LINENUM";
2222
public static final String LINETXT = SearchManager.SUGGEST_COLUMN_TEXT_2;
23-
private static final String[] COLS = {BaseColumns._ID, SONNETNUM, SONNETSTR, LINENUM, LINETXT};
23+
private static final String[] COLS = {BaseColumns._ID,
24+
SONNETNUM,
25+
SONNETSTR,
26+
LINENUM,
27+
LINETXT};
2428

2529
private SonnetsSQLOpenHelper sql;
2630

@@ -36,7 +40,9 @@ public SonnetFragment[] search(String query) {
3640
if(cur != null) {
3741
ArrayList<SonnetFragment> arr = new ArrayList<SonnetFragment>();
3842
while(cur.moveToNext()) {
39-
arr.add(new SonnetFragment(cur.getInt(cur.getColumnIndex(SONNETNUM)), cur.getString(cur.getColumnIndex(LINETXT))));
43+
arr.add(
44+
new SonnetFragment(cur.getInt(cur.getColumnIndex(SONNETNUM)),
45+
cur.getString(cur.getColumnIndex(LINETXT))));
4046
}
4147
if(!arr.isEmpty()) {
4248
frags = arr.toArray(new SonnetFragment[arr.size()]);
@@ -52,7 +58,8 @@ public Sonnet getSonnet(int i) {
5258
String num = null;
5359
ArrayList<String> arr = new ArrayList<String>();
5460
while(cur.moveToNext()) {
55-
if(num == null) num = cur.getString(cur.getColumnIndex(SONNETSTR));
61+
if(num == null)
62+
num = cur.getString(cur.getColumnIndex(SONNETSTR));
5663
arr.add(cur.getString(cur.getColumnIndex(LINETXT)));
5764
}
5865
if(!arr.isEmpty()) {
@@ -85,7 +92,13 @@ private Cursor query(String selection, String[] selectionArgs, String[] columns,
8592
SQLiteQueryBuilder builder = new SQLiteQueryBuilder();
8693
builder.setTables(SONNETTABLE);
8794

88-
Cursor cursor = builder.query(sql.getReadableDatabase(), columns, selection, selectionArgs, null, null, sort);
95+
Cursor cursor =
96+
builder.query(sql.getReadableDatabase(),
97+
columns, selection,
98+
selectionArgs,
99+
null,
100+
null,
101+
sort);
89102

90103
if (cursor == null) {
91104
return null;
@@ -99,7 +112,8 @@ private Cursor query(String selection, String[] selectionArgs, String[] columns,
99112
private void readInSonnets(Context context, int resourceId) throws Exception {
100113
BufferedReader br = null;
101114
try {
102-
br = new BufferedReader(new InputStreamReader(context.getResources().openRawResource(resourceId)));
115+
br = new BufferedReader(
116+
new InputStreamReader(context.getResources().openRawResource(resourceId)));
103117
String line = null;
104118
String num = null;
105119
ArrayList<String> ls = new ArrayList<String>();
@@ -113,7 +127,11 @@ private void readInSonnets(Context context, int resourceId) throws Exception {
113127
Sonnet sonnet = new Sonnet(num, ls.toArray(new String[size]));
114128
if(sql != null) {
115129
for(int i=0;i<size;i++) {
116-
sql.addSonnet(id++, sonnet.num, sonnet.number, i, sonnet.lines[i]);
130+
sql.addSonnet( id++,
131+
sonnet.num,
132+
sonnet.title,
133+
i,
134+
sonnet.lines[i]);
117135
}
118136
}
119137
}
@@ -144,7 +162,13 @@ public SonnetsSQLOpenHelper(Context context) {
144162
@Override
145163
public void onCreate(SQLiteDatabase db) {
146164
sonnetdb = db;
147-
sonnetdb.execSQL("CREATE TABLE "+SONNETTABLE+" ("+BaseColumns._ID +" INTEGER, "+SONNETNUM+" INTEGER, "+SearchManager.SUGGEST_COLUMN_INTENT_DATA_ID+" TEXT, "+SONNETSTR+" TEXT, "+LINENUM+" INTEGER, "+LINETXT+" TEXT);");
165+
sonnetdb.execSQL("CREATE TABLE "+SONNETTABLE+
166+
" ("+BaseColumns._ID +" INTEGER, "+
167+
SONNETNUM+" INTEGER, "+
168+
SearchManager.SUGGEST_COLUMN_INTENT_DATA_ID+
169+
" TEXT, "+SONNETSTR+" TEXT, "+
170+
LINENUM+" INTEGER, "+LINETXT+
171+
" TEXT);");
148172
}
149173

150174
@Override

SearchDemo/src/com/oreilly/demo/android/pa/searchdemo/SearchDBLogic.java

Lines changed: 30 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,11 @@ public class SearchDBLogic implements SearchLogicInterface {
2020
public static final String SONNETSTR = "SONNETSTR";
2121
public static final String LINENUM = "LINENUM";
2222
public static final String LINETXT = SearchManager.SUGGEST_COLUMN_TEXT_2;
23-
private static final String[] COLS = {BaseColumns._ID, SONNETNUM, SONNETSTR, LINENUM, LINETXT};
23+
private static final String[] COLS = {BaseColumns._ID,
24+
SONNETNUM,
25+
SONNETSTR,
26+
LINENUM,
27+
LINETXT};
2428

2529
private SonnetsSQLOpenHelper sql;
2630

@@ -36,7 +40,9 @@ public SonnetFragment[] search(String query) {
3640
if(cur != null) {
3741
ArrayList<SonnetFragment> arr = new ArrayList<SonnetFragment>();
3842
while(cur.moveToNext()) {
39-
arr.add(new SonnetFragment(cur.getInt(cur.getColumnIndex(SONNETNUM)), cur.getString(cur.getColumnIndex(LINETXT))));
43+
arr.add(
44+
new SonnetFragment(cur.getInt(cur.getColumnIndex(SONNETNUM)),
45+
cur.getString(cur.getColumnIndex(LINETXT))));
4046
}
4147
if(!arr.isEmpty()) {
4248
frags = arr.toArray(new SonnetFragment[arr.size()]);
@@ -85,7 +91,13 @@ private Cursor query(String selection, String[] selectionArgs, String[] columns,
8591
SQLiteQueryBuilder builder = new SQLiteQueryBuilder();
8692
builder.setTables(SONNETTABLE);
8793

88-
Cursor cursor = builder.query(sql.getReadableDatabase(), columns, selection, selectionArgs, null, null, sort);
94+
Cursor cursor = builder.query(sql.getReadableDatabase(),
95+
columns,
96+
selection,
97+
selectionArgs,
98+
null,
99+
null,
100+
sort);
89101

90102
if (cursor == null) {
91103
return null;
@@ -99,7 +111,8 @@ private Cursor query(String selection, String[] selectionArgs, String[] columns,
99111
private void readInSonnets(Context context, int resourceId) throws Exception {
100112
BufferedReader br = null;
101113
try {
102-
br = new BufferedReader(new InputStreamReader(context.getResources().openRawResource(resourceId)));
114+
br = new BufferedReader(
115+
new InputStreamReader(context.getResources().openRawResource(resourceId)));
103116
String line = null;
104117
String num = null;
105118
ArrayList<String> ls = new ArrayList<String>();
@@ -113,7 +126,11 @@ private void readInSonnets(Context context, int resourceId) throws Exception {
113126
Sonnet sonnet = new Sonnet(num, ls.toArray(new String[size]));
114127
if(sql != null) {
115128
for(int i=0;i<size;i++) {
116-
sql.addSonnet(id++, sonnet.num, sonnet.title, i, sonnet.lines[i]);
129+
sql.addSonnet( id++,
130+
sonnet.num,
131+
sonnet.title,
132+
i,
133+
sonnet.lines[i]);
117134
}
118135
}
119136
}
@@ -144,7 +161,14 @@ public SonnetsSQLOpenHelper(Context context) {
144161
@Override
145162
public void onCreate(SQLiteDatabase db) {
146163
sonnetdb = db;
147-
sonnetdb.execSQL("CREATE TABLE "+SONNETTABLE+" ("+BaseColumns._ID +" INTEGER, "+SONNETNUM+" INTEGER, "+SearchManager.SUGGEST_COLUMN_INTENT_DATA_ID+" TEXT, "+SONNETSTR+" TEXT, "+LINENUM+" INTEGER, "+LINETXT+" TEXT);");
164+
sonnetdb.execSQL("CREATE TABLE "+
165+
SONNETTABLE+
166+
" ("+BaseColumns._ID +" INTEGER, "+
167+
SONNETNUM+" INTEGER, "+
168+
SearchManager.SUGGEST_COLUMN_INTENT_DATA_ID+
169+
" TEXT, "+SONNETSTR+" TEXT, "+
170+
LINENUM+" INTEGER, "+LINETXT+
171+
" TEXT);");
148172
}
149173

150174
@Override

SearchDemo/src/com/oreilly/demo/android/pa/searchdemo/SearchDBProvider.java

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,18 @@
1010
import android.provider.BaseColumns;
1111

1212
public class SearchDBProvider extends ContentProvider {
13-
public final static String AUTHORITY = "com.oreilly.demo.android.pa.searchdemo.SearchDBProvider";
14-
public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/sonnets");
13+
public final static String AUTHORITY =
14+
"com.oreilly.demo.android.pa.searchdemo.SearchDBProvider";
15+
public static final Uri CONTENT_URI =
16+
Uri.parse("content://" + AUTHORITY + "/sonnets");
1517
public final static int MODE = 1;
1618

17-
public static final String MIME_TYPE = ContentResolver.CURSOR_DIR_BASE_TYPE + "/vnd.oreilly.demo.android.pa.searchdemo";
18-
public static final String SONNET_MIME_TYPE = ContentResolver.CURSOR_ITEM_BASE_TYPE + "/vnd.oreilly.demo.android.pa.searchdemo";
19+
public static final String MIME_TYPE =
20+
ContentResolver.CURSOR_DIR_BASE_TYPE +
21+
"/vnd.oreilly.demo.android.pa.searchdemo";
22+
public static final String SONNET_MIME_TYPE =
23+
ContentResolver.CURSOR_ITEM_BASE_TYPE +
24+
"/vnd.oreilly.demo.android.pa.searchdemo";
1925

2026
private static final int SEARCH = 0;
2127
private static final int GET_SONNET = 1;
@@ -29,8 +35,12 @@ private static UriMatcher buildUriMatcher() {
2935
umatcher.addURI(AUTHORITY, "sonnets", SEARCH);
3036
umatcher.addURI(AUTHORITY, "sonnets/#", GET_SONNET);
3137

32-
umatcher.addURI(AUTHORITY, SearchManager.SUGGEST_URI_PATH_QUERY, SEARCH_SUGGEST);
33-
umatcher.addURI(AUTHORITY, SearchManager.SUGGEST_URI_PATH_QUERY + "/*", SEARCH_SUGGEST);
38+
umatcher.addURI(AUTHORITY,
39+
SearchManager.SUGGEST_URI_PATH_QUERY,
40+
SEARCH_SUGGEST);
41+
umatcher.addURI(AUTHORITY,
42+
SearchManager.SUGGEST_URI_PATH_QUERY + "/*",
43+
SEARCH_SUGGEST);
3444

3545
return umatcher;
3646
}

SearchDemo/src/com/oreilly/demo/android/pa/searchdemo/SearchLogic.java

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,14 +57,17 @@ public SonnetFragment[] search(String query) {
5757
}
5858
}
5959

60-
return frags.isEmpty() ? new SonnetFragment[0] : frags.toArray(new SonnetFragment[frags.size()]);
60+
return frags.isEmpty() ?
61+
new SonnetFragment[0] :
62+
frags.toArray(new SonnetFragment[frags.size()]);
6163
}
6264

6365
private static Sonnet[] readInSonnets(Context context, int resourceId, HashMap<String, HashSet<SonnetRef>> index) throws Exception {
6466
ArrayList<Sonnet> sons = new ArrayList<Sonnet>();
6567
BufferedReader br = null;
6668
try {
67-
br = new BufferedReader(new InputStreamReader(context.getResources().openRawResource(resourceId)));
69+
br = new BufferedReader(
70+
new InputStreamReader(context.getResources().openRawResource(resourceId)));
6871
String line = null;
6972

7073
String num = null;
@@ -82,7 +85,9 @@ private static Sonnet[] readInSonnets(Context context, int resourceId, HashMap<S
8285
String[] words = sonnet.lines[i].split(" ".intern());
8386
if(words != null) {
8487
for(String word: words) {
85-
while(word.endsWith(",".intern()) || word.endsWith(".".intern()) || word.endsWith("?".intern())) {
88+
while(word.endsWith(",".intern()) ||
89+
word.endsWith(".".intern()) ||
90+
word.endsWith("?".intern())) {
8691
word = word.substring(0, word.length() - 1);
8792
}
8893
word = word.trim().toLowerCase();

0 commit comments

Comments
 (0)