6237 Programmering II (Csharp) Agenda/Controller class
From Teknologisk videncenter
Controller class
I de løsninger vi indtil nu har arbejdet med har en stor del at koden ligget i Main. Det er i midlertid ikke den bedste løsning hvis det vi laver skal kunne genbruges.
I stedet laver vi en kontroller klasse som indeholder de kan læse logfilen oprette listen af logs og søge i logs.
Modellen ser således ud i UML
class LogCtrl
{
private List<Log> Logs;
public void ReadLogFile(String fileName)
{
//Her skrives det kode fra main som læser logfilen
}
private void analyze(List<String> lines)
{
if (lines.Count < 2) return;
String protocol = lines[1].Substring(67, 9);
String source = lines[1].Substring(22, 23);
String destination = lines[1].Substring(44, 23);
Log log = new Log(source, destination, protocol);
logs.Add(log);
.....
.....
}
public List<Log> FindLogs(String source, String destination, String protocol)
{
//Din søge kode
}
}
static void Main(string[] args)
{
LogCtrl lCtrl = new LogCtrl();
lCtrl.ReadLogFile("logfile.txt");
List<Log> logLst = lCtrl.FindLogsByProtocol("","","DNS");
}