85 lines
2.5 KiB
C#
85 lines
2.5 KiB
C#
//
|
|
// Class: Response
|
|
// Current CLR: 4.0.30319.34209
|
|
// System: Microsoft Visual Studio 10.0
|
|
// Author: dani
|
|
// Created: 3/1/2015 8:12:08 PM
|
|
//
|
|
// Copyright (c) 2015 Informatikbüro Daniel Schick. All rights reserved.
|
|
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using bsmd.database;
|
|
using log4net;
|
|
|
|
namespace bsmd.dbh
|
|
{
|
|
public class Response
|
|
{
|
|
|
|
private static ILog _log = LogManager.GetLogger("dbh Response");
|
|
|
|
public static void ProcessResponse(response.Root response, string connectionString)
|
|
{
|
|
_log.InfoFormat("processing message type {0}, version {1}", response.Type, response.Version);
|
|
|
|
if (DBManager.Instance.Connect(connectionString))
|
|
{
|
|
|
|
// Status zu den jeweiligen Nachrichten. Bei uns sollte die Anzahl hier immer 1 sein, da wir die Dinger
|
|
// einzeln verschicken.
|
|
for (int i = 0; i < response.Messages.Length; i++)
|
|
{
|
|
switch (response.Messages[i].Type)
|
|
{
|
|
case dbh.response.RootMessageType.ERROR:
|
|
MessageError messageError = new MessageError();
|
|
messageError.ErrorText = response.Messages[i].Text;
|
|
// messageError.ErrorCode =
|
|
|
|
|
|
break;
|
|
case dbh.response.RootMessageType.VIOLATION:
|
|
|
|
|
|
break;
|
|
case dbh.response.RootMessageType.WARNING:
|
|
case dbh.response.RootMessageType.INFO:
|
|
default:
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
switch (response.Type)
|
|
{
|
|
case dbh.response.RootType.VISIT:
|
|
|
|
break;
|
|
case dbh.response.RootType.TRANSIT:
|
|
|
|
break;
|
|
case dbh.response.RootType.CANCEL:
|
|
|
|
break;
|
|
case dbh.response.RootType.RESET:
|
|
|
|
break;
|
|
case dbh.response.RootType.DATA:
|
|
|
|
break;
|
|
}
|
|
DBManager.Instance.Disconnect();
|
|
}
|
|
else
|
|
{
|
|
_log.Fatal("cannot connect to database");
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|