Package igotyou.SnitchTrack

Source Code of igotyou.SnitchTrack.SnitchManager

package igotyou.SnitchTrack;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import org.apache.commons.net.ftp.FTPClient;

public class SnitchManager
{
  private List<Snitch> snitches;
 
  public SnitchManager()
  {
    snitches = new ArrayList<Snitch>();
    try
    {
      load(new File("snitchtest.txt"));
    }
    catch (IOException e)
    {
      e.printStackTrace();
    }
  }
 
  public void downloadFromFtp(String host, int port, String username, String password, String fileName)
  {
    FTPClient client = new FTPClient();
    FileOutputStream fos = null;
   
    try
    {
      client.connect(host,port);
      client.login(username, password);
     
      fos = new FileOutputStream(fileName);
     
      client.retrieveFile("/" + fileName, fos);
    }
    catch (IOException e)
    {
      e.printStackTrace();
    }
    try
    {
      if (fos != null)
      {
        fos.close();
      }
      client.disconnect();
    }
    catch (IOException e)
    {
      e.printStackTrace();
    }
    try
    {
      this.load(new File(fileName));
    }
    catch (IOException e)
    {
      e.printStackTrace();
    }
 
  }
 
  public void uploadToFtp(String host, int port, String username, String password, String fileName)
  {
    FTPClient client = new FTPClient();
    FileInputStream fis = null;
   
    try
    {
      client.connect(host, port);
      client.login(username, password);
     
      fis = new FileInputStream(fileName);
     
      client.storeFile(fileName, fis);
      client.logout();
    }
    catch (IOException e)
    {
      e.printStackTrace();
    }
    try
    {
      if (fis != null)
      {
        fis.close();
      }
      client.disconnect();
    }
    catch (IOException e)
    {
      e.printStackTrace();
    }
   
  }
 
  public void load(File file) throws IOException
  {
    FileInputStream fileInputStream = new FileInputStream(file);
    BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(fileInputStream));

    String line;
    while ((line = bufferedReader.readLine()) != null)
    {
      String parts[] = line.split("�");
      boolean dateFound = false;
      //ORDER loc_x loc_y loc_z worldname date

      int snitch_x = Integer.parseInt(parts[0]);
      int snitch_y = Integer.parseInt(parts[1]);
      int snitch_z = Integer.parseInt(parts[2]);
      int snitch_world = Integer.parseInt(parts[3]);
      String snitch_name = parts[4];
      DateFormat date_format = new SimpleDateFormat("k:mmdd/MMyyyy");
      Date snitch_date = null;
      try
      {
        snitch_date = date_format.parse(parts[5]);
        dateFound = true;
      }
      catch (ParseException e)
      {
        dateFound = false;
        e.printStackTrace();
      }
      if (dateFound == true)
      {
        create_snitch(snitch_x, snitch_y, snitch_z, snitch_world, snitch_name, snitch_date);
      }
      else
      {
        create_snitch(snitch_x, snitch_y, snitch_z, snitch_world, snitch_name)
      }
    }
    fileInputStream.close();
  }
 
  public void save(File file) throws IOException
  {
    FileOutputStream fileOutputStream = new FileOutputStream(file);
    BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(fileOutputStream));

    for (Snitch snitch : snitches)
    {
      //ORDER loc_x loc_y loc_z world_name dateChecked
      bufferedWriter.append(Integer.toString(snitch.get_x()));
      bufferedWriter.append("�");
      bufferedWriter.append(Integer.toString(snitch.get_y()));
      bufferedWriter.append("�");
      bufferedWriter.append(Integer.toString(snitch.get_z()));
      bufferedWriter.append("�");
      bufferedWriter.append(Integer.toString(snitch.get_world()));
      bufferedWriter.append("�");
      bufferedWriter.append(snitch.get_name());
      bufferedWriter.append("�");
      DateFormat date_format = new SimpleDateFormat("k:mmdd/MMyyyy");
      bufferedWriter.append(date_format.format(snitch.get_date_checked()));
            bufferedWriter.append("\n");
           
        }
   
    bufferedWriter.flush();
    fileOutputStream.close();
  }
 
  public Snitch get_snitch_by_name(String snitchName, int snitchWorld)
  {
    for (Snitch snitch : snitches)
    {
      if (snitch.get_name().equalsIgnoreCase(snitchName) && snitch.get_world() == snitchWorld)
      {
        return snitch;
      }
    }
    return null;
  }
 
  public Snitch get_snitch_by_cords(int snitchX, int snitchY, int snitchZ, int snitchWorld)
  {
    for(Snitch snitch : snitches)
    {
      if (snitch.get_x() == snitchX && snitch.get_y() == snitchY && snitch.get_z() == snitchZ && snitch.get_world() == snitchWorld)
      {
        return snitch;
      }
    }
    return null;
  }
 
  public void create_snitch(int new_x, int new_y, int new_z, int new_world, String new_name, Date new_date)
  {
    Snitch snitch = new Snitch(new_x, new_y, new_z, new_world, new_name, this, new_date);
    snitches.add(snitch);
 
  public void create_snitch(int new_x, int new_y, int new_z, int new_world, String new_name)
  {
    Snitch snitch = new Snitch(new_x, new_y, new_z, new_world, new_name, this);
    snitches.add(snitch);
  }
  public void removeSnitch(Snitch snitch)
  {
    snitches.remove(snitch);
  }
  public List<Snitch> get_snitches()
  {
    return snitches;
  }
}
TOP

Related Classes of igotyou.SnitchTrack.SnitchManager

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.