123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175 |
- package de.tudarmstadt.informatik.hostage.ui;
- import java.text.DateFormat;
- import java.text.SimpleDateFormat;
- import java.util.ArrayList;
- import java.util.Date;
- import java.util.HashMap;
- import android.annotation.SuppressLint;
- import android.app.Activity;
- import android.os.Bundle;
- import android.view.View;
- import android.widget.AdapterView;
- import android.widget.ListAdapter;
- import android.widget.ListView;
- import android.widget.SimpleAdapter;
- import android.widget.Toast;
- import de.tudarmstadt.informatik.hostage.R;
- import de.tudarmstadt.informatik.hostage.logging.DatabaseHandler;
- import de.tudarmstadt.informatik.hostage.logging.Record;
- /**
- * Creates a simple log view. Shows the Information for every attack. The format ist defined in {@link Record#toString(int)}.
- * @author Lars Pandikow
- *
- */
- public class ViewLogTable extends Activity{
- DatabaseHandler dbh;
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- dbh = new DatabaseHandler(getBaseContext());
- setContentView(R.layout.activity_loglist);
- // StringBuffer log = new StringBuffer();
- // //Create a log entry for every attack in the Database
- // for(Record record: dbh.getAllReceivedRecordsOfEachAttack()) {
- // log.append(record.toString(0));
- // }
-
- // ScrollView scroll = new ScrollView(this);
- // TextView text = new TextView(getApplicationContext());
- // text.setText(log);
- // text.setTextAppearance(this, android.R.style.TextAppearance_Medium);
- // scroll.addView(text);
-
- populateListViewFromDB();
- registerListClickCallback();
- }
-
- private void populateListViewFromDB() {
-
- ListView mylist = (ListView) findViewById(R.id.loglistview);
-
- ArrayList<HashMap<String, String>> Items = new ArrayList<HashMap<String, String>>();
- ArrayList<Record> data = dbh.getAllRecords();
- for (Record val : data) {
- HashMap<String, String> map = new HashMap<String, String>();
- map.put(this.getString(R.string.RecordBSSID), val.getBSSID() );
- map.put(this.getString(R.string.RecordSSID), val.getSSID());
- map.put(this.getString(R.string.RecordProtocol), val.getProtocol());
- map.put(this.getString(R.string.RecordTimestamp), this.getDateAsString(val.getTimestamp()));
- Items.add(map);
- }
-
- // Adding Items to ListView
- ListAdapter adapter = new SimpleAdapter(this, Items,
- R.layout.loglist_row,new String[] { this.getString(R.string.RecordBSSID), this.getString(R.string.RecordSSID), this.getString(R.string.RecordProtocol), this.getString(R.string.RecordTimestamp) },
- new int[] {R.id.RecordTextFieldBSSID, R.id.RecordTextFieldSSID, R.id.RecordTextFieldProtocol, R.id.RecordTextFieldTimestamp });
- mylist.setAdapter(adapter);
-
- }
-
-
- @SuppressLint("SimpleDateFormat")
- private String getDateAsString(long timeStamp){
- try{
- DateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
- Date netDate = (new Date(timeStamp));
- return sdf.format(netDate);
- }
- catch(Exception ex){
- return "xx";
- }
- }
-
-
- private void registerListClickCallback() {
- ListView mylist = (ListView) findViewById(R.id.loglistview);
-
- mylist.setOnItemClickListener(new AdapterView.OnItemClickListener() {
- public void onItemClick(AdapterView<?> parent, View viewClicked, int position,
- long idInDB) {
- DatabaseHandler dbh = new DatabaseHandler(getBaseContext());
- Record rec = dbh.getRecord((int) idInDB);
- String message = createInformationStringFromRecord(rec);
- Toast.makeText(getApplicationContext(), message, Toast.LENGTH_LONG).show();
- }
-
- private String createInformationStringFromRecord(Record rec){
- String message = "id: " + rec.getId() + "\n" +
- "attack_id: " + rec.getAttack_id() +"\n" +
- "protocol: " + rec.getProtocol() +"\n" +
- "type: " + rec.getType() + "\n" +
- "externalIP: " + rec.getExternalIP() +"\n" +
- "localIP: " + rec.getLocalIP() +"\n" +
- "local port: " + rec.getLocalPort() +"\n" +
- "remoteIP: " + rec.getRemoteIP() +"\n" +
- "BSSID: " + rec.getBSSID() + "\n" +
- "SSID: " + rec.getSSID() +"\n" +
- "latitude: " + rec.getLatitude() +"\n" +
- "longitude: " + rec.getLongitude() + "\n" +
- "accuracy: " + rec.getAccuracy() +"\n" +
- "packet: " + rec.getPacket() + "\n" +
- getDateAsString(rec.getTimestamp()) +
- "";
- return message;
- }
-
- @SuppressLint("SimpleDateFormat")
- private String getDateAsString(long timeStamp){
- try{
- DateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
- Date netDate = (new Date(timeStamp));
- return sdf.format(netDate);
- }
- catch(Exception ex){
- return "xx";
- }
- }
-
- });
- }
-
-
- // @Override
- // public boolean onCreateOptionsMenu(Menu menu)
- // {
- // MenuInflater inflater = getMenuInflater();
- // inflater.inflate(R.menu.main_menu, menu);
- // return true;
- // }
- // @Override
- // public boolean onOptionsItemSelected(MenuItem item)
- // {
- // switch (item.getItemId())
- // {
- // case R.id.home:
- // ListviewActivity.this.finish();
- // return true;
- // case R.id.about:
- // Toast.makeText(getApplicationContext(), "This is collection and is created by amdel corporation",
- // Toast.LENGTH_LONG).show();
- // return true;
- // case R.id.exit:
- // finish();
- // System.exit(0);
- // return true;
- // default:
- // return super.onOptionsItemSelected(item);
- // }
- // }
- }
|