/*! @header ECLoggingXMLConfiguration @abstract Module of Encore @availability OS X, GNUstep @copyright 2004, 2005, 2006 Oliver Langer Author: Oliver Langer This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA <pre> ------------------------------------------------------------------------- Modification history 11.02.06 ola initial version 22.08.06 ola license changed ------------------------------------------------------------------------- </pre> */ #include <Encore/ECLoggingXMLConfiguration.h> @implementation ECLoggingXMLConfiguration - addECLoggingContext: (ECLoggingContext *) aContext { if( [aContext isRootContext] ) { [[ECLogging instance] addRootLoggingConfiguration: [aContext configuration]]; } else { [[ECLogging instance] addLoggingConfiguration: [aContext configuration] forContext: [aContext context]]; } return self; } @end /******************************************************* ECLoggingContext */ @implementation ECLoggingContext - init { self = [super init]; self->context = nil; self->configuration = nil; return self; } - (void) dealloc { [self->context release]; [self->configuration release]; self->isRootContext = NO; [super dealloc]; } - (NSString *) context { return self->context; } - (ECLoggingConfiguration *) configuration { return self->configuration; } - (BOOL) isRootContext { return self->isRootContext; } - setContext: (NSString *) aContext { id tmp; tmp = self->context; self->context = [aContext retain]; [tmp release]; return self; } - setLoggingConfiguration: (ECLoggingConfiguration *) aConfiguration { id tmp; tmp = self->configuration; self->configuration = [aConfiguration retain]; [tmp release]; return self; } - setRootContext: (NSString *) rootContext { if( NSOrderedSame == [rootContext caseInsensitiveCompare: @"true"] || NSOrderedSame == [rootContext caseInsensitiveCompare: @"yes"] ) { self->isRootContext = YES; } else { self->isRootContext = NO; } return self; } @end