Hi, wir müssen uns grade im Rahmen des Studiums Subversion beibringen und wöchentlich verschiedene Aufgaben lösen. Nach etlichem recherchieren konnte ich auf einen Teil der aktuellen Aufgabe allerdings keine Lösung finden.
„Schreiben Sie einen Hook, der unterbindet, dass die User Lisa und Werner zwischen
18 Uhr abends und 8 Uhr morgens ein commit durchführen können.
Schreiben Sie für diese Funktion ein Java-Klasse mit main-Methode“
Meine Java Programm hab ich in drei Klassen geschrieben, class User, class Zeit und class PrüfeUser. Aber wie packe ich jetzt die einzelnen Klassen oder das ganze Packet in Subversion rein? Wir haben bisher in Programmieren neue Objekte immer in der Mainmethode mit dem new Operator erzeugt, mein Prof sagt jetzt dass das aber keinen Sinn ergibt weil man ja den Code nicht ändern soll. Es soll von außen auf die Klassen zugegriffen werden. Aber jegliche Recherche nach Infos wie man „von außen“ oder „außerhalb“ eine Methode / Klasse aufruft, führt zu Erläuterungen wie man zwar von außerhalb einer Klasse aber aus der Mainmethode aufruft…
Langsam wird die Zeit knapp weil morgen Abend Abgabe ist und ich diesen letzten Unterpunkt immer noch nicht habe. :rtfm:???:L;(
Es soll über die Kommandozeile vorm Durchführen des commits (Pre-commit-hook“) nach dem Nutzernamen gefragt werden und dann eben dieser Hook geprüft werden.
Vielen Dank schonmal für jede noch so kleine Hilfe und Info,
Sarah
Hier mein Programm:
„Schreiben Sie einen Hook, der unterbindet, dass die User Lisa und Werner zwischen
18 Uhr abends und 8 Uhr morgens ein commit durchführen können.
Schreiben Sie für diese Funktion ein Java-Klasse mit main-Methode“
Meine Java Programm hab ich in drei Klassen geschrieben, class User, class Zeit und class PrüfeUser. Aber wie packe ich jetzt die einzelnen Klassen oder das ganze Packet in Subversion rein? Wir haben bisher in Programmieren neue Objekte immer in der Mainmethode mit dem new Operator erzeugt, mein Prof sagt jetzt dass das aber keinen Sinn ergibt weil man ja den Code nicht ändern soll. Es soll von außen auf die Klassen zugegriffen werden. Aber jegliche Recherche nach Infos wie man „von außen“ oder „außerhalb“ eine Methode / Klasse aufruft, führt zu Erläuterungen wie man zwar von außerhalb einer Klasse aber aus der Mainmethode aufruft…
Langsam wird die Zeit knapp weil morgen Abend Abgabe ist und ich diesen letzten Unterpunkt immer noch nicht habe. :rtfm:???:L;(
Es soll über die Kommandozeile vorm Durchführen des commits (Pre-commit-hook“) nach dem Nutzernamen gefragt werden und dann eben dieser Hook geprüft werden.
Vielen Dank schonmal für jede noch so kleine Hilfe und Info,
Sarah
Hier mein Programm:
Java:
package Prüfung;
public class User
{
String Name;
public User (String n)
{Name = n;}
@Override
public String toString()
{return Name;}
@Override
public boolean equals(Object obj)
{
if (obj == null)
{return false;}
if (obj instanceof String)
{
String s = (String)obj;
return this.Name.equals(s);
}
return false;
}
}
Java:
package Prüfung;
import java.util.GregorianCalendar;
import java.util.Calendar;
public class Zeit
{
GregorianCalendar Zeit = new GregorianCalendar();
int Std = Zeit.get(Calendar.HOUR_OF_DAY);
int Min = Zeit.get(Calendar.MINUTE);
public int getStd()
{return Std;}
public int getMin()
{return Min;}
}
Java:
package Prüfung;
public class PrüfeUser
{
public static void main(String[] args)
{
User jetzt = new User(„Werner“);
Zeit aktuell = new Zeit();
aktuell.getStd();
aktuell.getMin();
if (jetzt.equals(„Lisa“))
{
if(aktuell.Std>=18 || aktuell.Std<=8)
{
System.out.println(jetzt + „ es ist „ + aktuell.Std +“ Uhr:“ + aktuell.Min + „. Keine Berechtigung.“);
return;
}
}
if (jetzt.equals(„Werner“))
{
if(aktuell.Std>=18 || aktuell.Std<=8)
{
System.out.println(jetzt + „ es ist „ + aktuell.Std +“:“+aktuell.Min + „ Uhr. Keine Berechtigung.“);
return;
}
}
System.out.println(jetzt.toString()+": Berechtigter User um "+ aktuell.Std + " Uhr:" + aktuell.Min);
}
}