Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.ftpsentinel;
- import java.io.File;
- import com.ftpsentinel.Utils;
- import android.app.Notification;
- import android.app.NotificationManager;
- import android.app.PendingIntent;
- import android.content.Intent;
- import android.os.Bundle;
- import android.util.Log;
- import android.widget.Toast;
- import android.preference.CheckBoxPreference;
- import android.preference.EditTextPreference;
- import android.preference.Preference;
- import android.preference.Preference.OnPreferenceClickListener;
- import android.preference.PreferenceActivity;
- public class FtpsentinelActivity extends PreferenceActivity {
- public boolean getWelcomeMsg = false;
- public EditTextPreference hostEdit;
- public EditTextPreference usernameEdit;
- public EditTextPreference passwordEdit;
- public EditTextPreference portEdit;
- public CheckBoxPreference welcomeCheck;
- public EditTextPreference timerButton;
- public Preference connectButton;
- public Preference fileListButton;
- public Preference manualCheckButton;
- public Preference logoutButton;
- public Ftp newFtp;
- Utils utils = new Utils();
- public String dateFile;
- public final String fileList = "/sdcard/.ftpsentinelList";
- public final String newFileList = "/sdcard/.ftpsentinelList.new";
- public int timer;
- public CheckService checkService;
- public boolean haveUserRead;
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- addPreferencesFromResource(R.layout.layout);
- dateFile = utils.getFileDate(fileList);
- hostEdit = (EditTextPreference) findPreference("host");
- usernameEdit = (EditTextPreference) findPreference("username");
- passwordEdit = (EditTextPreference) findPreference("password");
- portEdit = (EditTextPreference) findPreference("port");
- welcomeCheck = (CheckBoxPreference) findPreference("welcomeCheck");
- timerButton = (EditTextPreference) findPreference("timerButton");
- connectButton = (Preference) findPreference("connectButton");
- connectButton.setOnPreferenceClickListener(connectListener);
- fileListButton = (Preference) findPreference("getListButton");
- fileListButton.setSummary("Last update on: " + dateFile);
- fileListButton.setOnPreferenceClickListener(fileListListener);
- manualCheckButton = (Preference) findPreference("manualCheckButton");
- manualCheckButton.setOnPreferenceClickListener(manualCheckListener);
- logoutButton = (Preference) findPreference("disconnectButton");
- logoutButton.setOnPreferenceClickListener(logoutListener);
- }
- OnPreferenceClickListener connectListener = new OnPreferenceClickListener() {
- private String hostname;
- private String username;
- private String password;
- private int port;
- public boolean onPreferenceClick(Preference preference) {
- hostname = hostEdit.getText();
- username = usernameEdit.getText();
- password = passwordEdit.getText();
- port = Integer.parseInt(portEdit.getText());
- if(welcomeCheck.isChecked()) {
- getWelcomeMsg = true;
- }
- String IP = !utils.isIPAddress(hostname) ? utils.GetIP(hostname) : hostname;
- newFtp = new Ftp(username, password, IP, port);
- newFtp.connect(getWelcomeMsg);
- if(newFtp.getWelcomeMessage() != null) {
- Toast.makeText(getBaseContext(), newFtp.getWelcomeMessage(), 100000).show();
- }
- checkService = new CheckService(newFtp, utils, newFileList, fileList, hostEdit.getText(), Integer.parseInt(timerButton.getText()));
- checkService.startCheckService();
- return true;
- }
- };
- OnPreferenceClickListener fileListListener = new OnPreferenceClickListener() {
- public boolean onPreferenceClick(Preference preference) {
- newFtp.getFileList(fileList);
- return true;
- }
- };
- OnPreferenceClickListener manualCheckListener = new OnPreferenceClickListener() {
- public boolean onPreferenceClick(Preference preference) {
- if(!newFtp.checkUpdates(utils, newFileList, fileList)) {
- Log.i("LOL", "<<< FILE CHANGED! >>>");
- //checkService.showNotification("Some files changed", "Some files changed", "file changed on " + hostEdit.getText(), 1);
- }
- if(!(new File(newFileList)).delete()) {
- Toast.makeText(getBaseContext(), "!!! IOExcpection !!! unable to delete new file list", 5000).show();
- }
- return true;
- }
- };
- OnPreferenceClickListener logoutListener = new OnPreferenceClickListener() {
- public boolean onPreferenceClick(Preference preference) {
- newFtp.disconnect();
- checkService.stopCheckService();
- Toast.makeText(getBaseContext(), "Disconnected", 2000).show();
- return true;
- }
- };
- public void hello() { Log.i("LOL", "<<< HELLO! >>>"); }
- public void checkForUpdates() {
- if(!newFtp.checkUpdates(utils, newFileList, fileList)) {
- Log.i("LOL", "<<< CHANGED FILES >>>");
- //showNotification("Some files changed", "Some files changed", "file changed on" + hostEdit.getText(), 1);
- } else {
- Log.i("LOL", "<<< NOT CHANGED FILES >>>");
- }
- if(!(new File(newFileList)).delete()) {
- Toast.makeText(getBaseContext(), "!!! IOExcpection !!! unable to delete new file list", 5000).show();
- }
- }
- void showNotification(String title, String brief, String message, int ID) {
- if(!haveUserRead) {
- NotificationManager notificationManager = (NotificationManager)getSystemService(NOTIFICATION_SERVICE);
- Notification notification = new Notification(R.drawable.icon, title, System.currentTimeMillis());
- Intent notificationIntent = new Intent(FtpsentinelActivity.this, FtpsentinelActivity.class);
- PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, android.content.Intent.FLAG_ACTIVITY_NEW_TASK);
- notification.setLatestEventInfo(getBaseContext(), brief, message, contentIntent);
- notificationManager.notify(ID, notification);
- haveUserRead = true;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement