/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package projekt1;
import java.io.*;
import java.awt.*;
import java.awt.event.*;
/**
*
* @author dl85hej
*/
public class projekt1
extends Frame
{
public String pfad, Zeichenkette, datei = "leer";
public Boolean Ende = false;
public static Integer Taste, Streifendauer, UGW, OGW, key,line = 0;
public LineNumberReader f;
/**
* @param args the command line arguments
*/
public static void main(String[] args){
// TODO code application logic here
//Lade alle Daten für die Klasse
Initialisierung();
//eMail();
//Streifendauer();
//Methode Datei laden und Zeile ermitteln
projekt1 mK = new projekt1();
mK.Zeile();
//hier wird die Streifendauer aus der Initialisierung genutzt
//System.out.println(Streifendauer);
Streifendauer = (Streifendauer * 100);
//ohne neuen Thread (Teil eines Programms) würde die gesamte main schlafen
Thread t = new Thread(){
@Override
public void run(){
System.out.println( "Es gibt ein Leben vor dem Tod. " );
while ( ! isInterrupted() ){
System.out.println( "Und er läuft und er läuft und er läuft" );
try{
Thread.sleep(Streifendauer);
}catch ( InterruptedException e ){
interrupt();
System.out.println( "Unterbrechung in sleep()" );
}
}
System.out.println( "Das Ende" );
}
};
t.start();
}
public projekt1(){
addKeyListener(new MyKeyListener());
}
public static void Exit(){
System.exit(0);
}
public static void Initialisierung(){
String zeile, Wachtmeister, UserID, smtp, Port;
//Integer Streifendauer;
Boolean Streifenart;
System.out.println("projekt1 im Dienst!");
System.out.println("Öffne config und...");
try{
//Der Aufruf new Filereader() erzeugt eine neue Instanz der Klasse FileReader
//unter der Instanz(Referenzvariable) datei wird der Speicher reserviert
FileReader datei = new FileReader("config.ini");
//Klasse BufferedReader sorgt dafür, dass mit einem Lesezugriff
//blockweise gelesen wird und nicht zeichenweise
//Vorteil: erhöht die Performance
BufferedReader dat_read = new BufferedReader(datei);
zeile = dat_read.readLine();
System.out.println("Init1: ...lese den Wachtmeister "+ zeile);
Wachtmeister = zeile;
zeile = dat_read.readLine();
System.out.println("Init2: ...lese die User -ID "+ zeile);
UserID = zeile;
zeile = dat_read.readLine();
System.out.println("Init3: ...lese den smtp - Server "+ zeile);
smtp = zeile;
zeile = dat_read.readLine();
System.out.println("Init4: ...lese den Port "+ zeile);
Port = zeile;
zeile = dat_read.readLine();
System.out.println("Init5: ...lese die Streifendauer von "+ zeile + " Minuten");
Streifendauer = Integer.parseInt(zeile);
zeile = dat_read.readLine();
System.out.println("Init6: ...lese die Art der Streife "+ zeile + " (true = Dauerstreife / false = Zeitstreife)");
Streifenart = Boolean.valueOf(zeile);
dat_read.close();
System.out.println("...schließe config!");
}
catch (FileNotFoundException e)
{
System.out.println("Fehler 1: Datei nicht gefunden");
}
catch (IOException e)
{
System.out.println("Fehler 2: "+ e.getMessage());
}
}
public static void Streifendienst(){
String dummy;
//meinObjekt1 für den Vorlauf Modulmontage Emden
//Objekt hat die Referenzvariable - Name im Speicher - meinObjekt1
projekt1 meinObjekt1;
meinObjekt1 = new projekt1();
projekt1 Datei1;
Datei1 = new projekt1();
Datei1.datei = "Vorlauf1.txt";
//lies Zeile
Datei1.line = 0;
Datei1.Zeile();
StringBuffer sb = new StringBuffer(Datei1.Zeichenkette);
String satz = Datei1.Zeichenkette;
//Vorlaufdatei zersplitten
Integer x =0;
String [] result = satz.split("\\s");
for(int X=0;x<result.length;x++){
StringBuffer sba = new StringBuffer(result[x]);
sba.delete(0,7);
result[x]=sba.toString();
//das Produktionsbit vom Rest auswerten
if (x == 6){
sba.delete(0,4);
result[6]=sba.toString();
//System.out.println(result[6]);
}
}
//meinObjekt2 für die Direktläufer Modulmontage Emden
//Objekt hat die Referenzvariable - Name im Speicher - meinObjekt1
projekt1 meinObjekt2;
meinObjekt2 = new projekt1();
projekt1 Datei2;
Datei2 = new projekt1();
Datei2.datei = "result.ini";
//DL - Quote SuSE1
Datei2.line = 23;
Datei2.Zeile();
StringBuffer sb1 = new StringBuffer(Datei2.Zeichenkette);
sb1.delete(0,5);
//System.out.println(Datei2.Zeichenkette);
//DL - Quote SuSE2
Datei2.line = 24;
Datei2.Zeile();
StringBuffer sb2 = new StringBuffer(Datei2.Zeichenkette);
sb2.delete(0,5);
//System.out.println("After delete: " + sb2);
//System.out.println(Datei2.Zeichenkette);
}
public void Zeile(){
Integer i = -1;
try{
f = new LineNumberReader(new FileReader(datei));
//System.out.println(datei);
while(i < line){
Zeichenkette = f.readLine();
i++;
}
f.close();
}catch (FileNotFoundException e){
System.out.println("Fehler 1: Datei nicht gefunden");
}catch (IOException e){
System.out.println("Fehler 2: "+ e.getMessage());
}
}
public static void Vorlaufdaten(){
System.out.println("Vorlaufdaten");
}
public static void Auswerten(){
System.out.println("Auswerten");
}
public static void Alarm(){
System.out.println("Alarm");
System.out.println("komme aus dem Streifendienst");
}
class MyKeyListener
extends KeyAdapter
{
@Override
public void keyPressed(KeyEvent event) {
if(event.getKeyCode()== KeyEvent.VK_ESCAPE){
t.interrupt();
}
}
}
}