* Source/NSManagedObjectContext.h

* Source/NSManagedObjectContext.m: Add managed object context.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@25392 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Gregory John Casamento 2007-08-15 03:25:23 +00:00
parent e806acc75d
commit 723d5276c0
3 changed files with 154 additions and 0 deletions

View file

@ -1,3 +1,8 @@
2007-08-14 23:24-EDT Gregory John Casamento <greg_casamento@yahoo.com>
* Source/NSManagedObjectContext.h
* Source/NSManagedObjectContext.m: Add managed object context.
2007-08-14 23:22-EDT Gregory John Casamento <greg_casamento@yahoo.com>
* Headers/AppKit/NSController.h: Added new ivar.

View file

@ -0,0 +1,43 @@
/** <title>NSManagedObjectContext</title>
<abstract>
This class is the context object for the controller classes.
It contains information which is used by those classes to maintain
the internal state.
</abstract>
Copyright (C) 2007 Free Software Foundation, Inc.
Author: Gregory John Casamento <greg_casamento@yahoo.com>
Date: 2007
This file is part of the GNUstep GUI Library.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 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
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with this library; see the file COPYING.LIB.
If not, write to the Free Software Foundation,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
#include <Foundation/NSObject.h>
@class NSMergePolicy;
@interface NSManagedObjectContext : NSObject <NSCoding>
{
NSMergePolicy *_mergePolicy;
BOOL _propagatesDeleted;
int _fetchTimestamp;
BOOL _retainsRegisteredObjects;
}
@end

View file

@ -0,0 +1,106 @@
/** <title>NSManagedObjectContext</title>
<abstract>
This class is the context object for the controller classes.
It contains information which is used by those classes to maintain
the internal state.
</abstract>
Copyright (C) 2007 Free Software Foundation, Inc.
Author: Gregory John Casamento <greg_casamento@yahoo.com>
Date: 2007
This file is part of the GNUstep GUI Library.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public
License as published by the Free Software Foundation; either
version 2 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
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with this library; see the file COPYING.LIB.
If not, write to the Free Software Foundation,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
#include "NSManagedObjectContext.h"
#include <Foundation/NSArchiver.h>
#include <Foundation/NSException.h>
#include <Foundation/NSDictionary.h>
#include <Foundation/NSString.h>
#include <Foundation/NSArray.h>
@interface NSMergePolicy : NSObject <NSCoding>
{
int _typeCode;
}
@end
@implementation NSMergePolicy
- (id) initWithCoder: (NSCoder *)coder
{
if ((self = [super init]) != nil)
{
if ([coder allowsKeyedCoding])
{
NSLog(@"merge policy: In keyed coder... %@",[coder keyMap]);
_typeCode = [coder decodeIntForKey: @"NSTypeCode"];
}
else
{
}
}
return self;
}
- (void) encodeWithCoder: (NSCoder *)coder
{
if ([coder allowsKeyedCoding])
{
}
else
{
}
}
@end
@implementation NSManagedObjectContext
- (id) initWithCoder: (NSCoder *)coder
{
if ((self = [super init]) != nil)
{
if ([coder allowsKeyedCoding])
{
NSLog(@"managed object: In keyed coder... %@",[coder keyMap]);
_mergePolicy = RETAIN([coder decodeObjectForKey:
@"NSMergePolicy"]);
_propagatesDeleted = [coder decodeBoolForKey:
@"NSPropagatesDeleted"];
_fetchTimestamp = [coder decodeIntForKey:
@"NSFetchTimestamp"];
_retainsRegisteredObjects = [coder decodeBoolForKey:
@"NSRetainsRegisteredObjects"];
}
else
{
}
}
return self;
}
- (void) encodeWithCoder: (NSCoder *)coder
{
if ([coder allowsKeyedCoding])
{
}
else
{
}
}
@end