public override void Close() { if (isClosed) { throw new NeoDatis.Odb.ODBRuntimeException(NeoDatis.Odb.Core.NeoDatisError.OdbIsClosed .AddParameter(parameters.GetIdentification())); } NeoDatis.Odb.Core.Server.Message.CloseMessage msg = new NeoDatis.Odb.Core.Server.Message.CloseMessage (parameters.GetBaseIdentifier(), connectionId); NeoDatis.Odb.Core.Server.Message.CloseMessageResponse rmsg = (NeoDatis.Odb.Core.Server.Message.CloseMessageResponse )SendMessage(msg); if (rmsg.HasError()) { throw new NeoDatis.Odb.ODBRuntimeException(NeoDatis.Odb.Core.NeoDatisError.ServerSideError .AddParameter("Error while closing database :").AddParameter(rmsg.GetError())); } isClosed = true; provider.RemoveLocalTriggerManager(this); }