Author: torehalset
Date: Mon Sep 18 13:06:18 2006
New Revision: 447531
URL: http://svn.apache.org/viewvc?view=rev&rev=447531
Log:
added CAYDataMapIO to create NSManagedObjectModel from a
CAYDataMap
Added:
incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMapIO.h
incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMapIO.m
incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjAttribute.h
incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjAttribute.m
Modified:
incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYCocoaCayenne.m
incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMap.h
incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMap.m
incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CocoaCayenne.xcodeproj/project.pbxproj
Modified: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYCocoaCayenne.m
URL:
http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYCocoaCayenne.m?view=diff&rev=447531&r1=447530&r2=447531
==============================================================================
--- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYCocoaCayenne.m
(original)
+++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYCocoaCayenne.m Mon
Sep 18 13:06:18 2006
@@ -31,6 +31,7 @@
[classMapping setObject:@"CAYGenericResponse"
forKey:@"org.apache.cayenne.util.GenericResponse"];
[classMapping setObject:@"CAYObjectId"
forKey:@"org.apache.cayenne.ObjectId"];
[classMapping setObject:@"CAYObjEntity"
forKey:@"org.apache.cayenne.map.ObjEntity"];
+ [classMapping setObject:@"CAYObjAttribute"
forKey:@"org.apache.cayenne.map.ObjAttribute"];
[classMapping setObject:@"CAYClientObjRelationship"
forKey:@"org.apache.cayenne.map.ClientObjRelationship"];
[classMapping setObject:@"CAYEntityResolver"
forKey:@"org.apache.cayenne.map.EntityResolver"];
[classMapping setObject:@"CAYDataMap"
forKey:@"org.apache.cayenne.map.DataMap"];
Modified: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMap.h
URL:
http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMap.h?view=diff&rev=447531&r1=447530&r2=447531
==============================================================================
--- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMap.h (original)
+++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMap.h Mon Sep 18
13:06:18 2006
@@ -19,6 +19,7 @@
#import <Cocoa/Cocoa.h>
+#import "CAYObjEntity.h"
@interface CAYDataMap : NSObject <NSCoding> {
@@ -31,5 +32,7 @@
-(NSString *)name;
-(void)setObjEntityMap:(NSMutableDictionary *)oem;
-(NSMutableDictionary *)objEntityMap;
+
+-(NSString *)classNameForObjEntity:(CAYObjEntity *)entity;
@end
Modified: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMap.m
URL:
http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMap.m?view=diff&rev=447531&r1=447530&r2=447531
==============================================================================
--- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMap.m (original)
+++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMap.m Mon Sep 18
13:06:18 2006
@@ -65,6 +65,12 @@
return objEntityMap;
}
+-(NSString *)classNameForObjEntity:(CAYObjEntity *)entity;
+{
+ // TODO: handle prefix for class name. Like MYPROJECTArtist
+ return [entity name];
+}
+
-(void)dealloc
{
[self setName:nil];
Added: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMapIO.h
URL:
http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMapIO.h?view=auto&rev=447531
==============================================================================
--- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMapIO.h (added)
+++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMapIO.h Mon Sep
18 13:06:18 2006
@@ -0,0 +1,31 @@
+/*****************************************************************
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+****************************************************************/
+
+#import <Cocoa/Cocoa.h>
+
+#import "CAYEntityResolver.h"
+#import "CAYDataMap.h"
+
[EMAIL PROTECTED] CAYDataMapIO : NSObject {
+
+}
+
++(NSManagedObjectModel *)dataMapAsManagedObjectModel:(CAYDataMap *)dataMap
entityResolver:(CAYEntityResolver *)resolver;
+
[EMAIL PROTECTED]
Added: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMapIO.m
URL:
http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMapIO.m?view=auto&rev=447531
==============================================================================
--- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMapIO.m (added)
+++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMapIO.m Mon Sep
18 13:06:18 2006
@@ -0,0 +1,148 @@
+/*****************************************************************
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+****************************************************************/
+
+#import "CAYDataMapIO.h"
+
+#import "CAYObjEntity.h"
+#import "CAYObjAttribute.h"
+#import "CAYClientObjRelationship.h"
+
[EMAIL PROTECTED] CAYDataMapIO
+
++(NSManagedObjectModel *)dataMapAsManagedObjectModel:(CAYDataMap *)dataMap
entityResolver:(CAYEntityResolver *)resolver
+{
+ NSManagedObjectModel *cdModel = [[NSManagedObjectModel alloc] init];
+
+ // collect all properties (attributes, relationships) and set them after
creating
+ // all entities
+ NSMutableDictionary *cdPropertiesByEntityName = [NSMutableDictionary
dictionary];
+
+ // entities
+ NSMutableDictionary *cdEntityByEntityName = [NSMutableDictionary
dictionary];
+ NSMutableArray *cdEntities = [NSMutableArray array];
+ NSEnumerator *entityEnumerator = [[dataMap objEntityMap] keyEnumerator];
+ NSString *entityName = nil;
+ while(entityName = [entityEnumerator nextObject])
+ {
+ CAYObjEntity *cayEntity = [[dataMap objEntityMap]
valueForKey:entityName];
+ NSEntityDescription *cdEntity = [[NSEntityDescription alloc] init];
+ [cdEntity setName:[cayEntity name]];
+ [cdEntity setManagedObjectClassName:[dataMap
classNameForObjEntity:cayEntity]];
+ [cdEntityByEntityName setObject:cdEntity forKey:entityName];
+
+ // attributes
+ NSMutableArray *cdAttributes = [NSMutableArray array];
+ NSEnumerator *cayAttributeEnumerator = [[cayEntity attributes]
keyEnumerator];
+ NSString *attributeName = nil;
+ while(attributeName = [cayAttributeEnumerator nextObject])
+ {
+ CAYObjAttribute *cayAttribute = [[cayEntity attributes]
valueForKey:attributeName];
+ NSAttributeDescription *cdAttribute = [[NSAttributeDescription
alloc] init];
+ [cdAttribute setName:[cayAttribute name]];
+ [cdAttributes addObject:cdAttribute];
+ [cdAttribute release];
+ }
+ [cdPropertiesByEntityName setObject:cdAttributes forKey:entityName];
+
+ [cdEntities addObject:cdEntity];
+ [cdEntity release];
+ }
+ [cdModel setEntities:cdEntities];
+
+ // relationships. must be done after all entities are handled
+ NSMutableDictionary *relationshipsByEntityName = [NSMutableDictionary
dictionary];
+ entityEnumerator = [[dataMap objEntityMap] keyEnumerator];
+ while(entityName = [entityEnumerator nextObject])
+ {
+ CAYObjEntity *cayEntity = [[dataMap objEntityMap]
valueForKey:entityName];
+
+ NSMutableDictionary *relationshipsByRelationName =
[NSMutableDictionary dictionary];
+
+ NSEnumerator *relEnumerator = [[cayEntity relationships]
keyEnumerator];
+ NSMutableArray *properties = [cdPropertiesByEntityName
valueForKey:entityName];
+ NSString *relName = nil;
+ while(relName = [relEnumerator nextObject])
+ {
+ CAYClientObjRelationship *cayRelationship = [[cayEntity
relationships] valueForKey:relName];
+ NSRelationshipDescription *cdRelationship =
[[NSRelationshipDescription alloc] init];
+ [cdRelationship setName:relName];
+ NSEntityDescription *destEntity = [cdEntityByEntityName
valueForKey:[cayRelationship targetEntityName]];
+ [cdRelationship setDestinationEntity:destEntity];
+
+ // set min/max count based on toMany
+ [cdRelationship setMinCount:0];
+ if([cayRelationship isToMany])
+ {
+ // TODO: documentation says -1 for toMany, but ctrl-esc says
unsigned int..
+ [cdRelationship setMaxCount:-1];
+ }
+ else
+ {
+ [cdRelationship setMaxCount:1];
+ }
+
+ [relationshipsByRelationName setObject:cdRelationship
forKey:relName];
+ [properties addObject:cdRelationship];
+ [cdRelationship release];
+ }
+
+ [relationshipsByEntityName setObject:relationshipsByRelationName
forKey:entityName];
+ }
+
+ // reverse relationships.. must be done after all relationships are created
+ entityEnumerator = [[dataMap objEntityMap] keyEnumerator];
+ while(entityName = [entityEnumerator nextObject])
+ {
+ CAYObjEntity *cayEntity = [[dataMap objEntityMap]
valueForKey:entityName];
+ NSDictionary *cdRelationshipsByRelationName =
[relationshipsByEntityName valueForKey:entityName];
+
+ NSEnumerator *relEnumerator = [[cayEntity relationships]
keyEnumerator];
+ NSString *relName = nil;
+ while(relName = [relEnumerator nextObject])
+ {
+ CAYClientObjRelationship *cayRelationship = [[cayEntity
relationships] valueForKey:relName];
+ NSRelationshipDescription *cdRelationship =
[cdRelationshipsByRelationName objectForKey:[cayRelationship name]];
+ if(!cdRelationship)
+ {
+ NSLog(@"ERROR: did not find core data relationship. base:
[EMAIL PROTECTED]@", entityName, [cayRelationship name]);
+ }
+
+ NSMutableDictionary *cdInverseRelationshipsByRelationName =
[relationshipsByEntityName valueForKey:[cayRelationship targetEntityName]];
+ NSRelationshipDescription *cdInverseRelationship =
[cdInverseRelationshipsByRelationName valueForKey:[cayRelationship
reverseRelationshipName]];
+ if(!cdInverseRelationship)
+ {
+ NSLog(@"ERROR: did not find core data relationship. base:
[EMAIL PROTECTED]@, inverse: [EMAIL PROTECTED]@", entityName, [cayRelationship
name], [cayRelationship targetEntityName], [cayRelationship
reverseRelationshipName]);
+ }
+ [cdRelationship setInverseRelationship:cdInverseRelationship];
+ }
+ }
+
+ // set all properties
+ NSEnumerator *propertiesEnumerator = [cdPropertiesByEntityName
keyEnumerator];
+ while(entityName = [propertiesEnumerator nextObject])
+ {
+ NSEntityDescription *cdEntity = [cdEntityByEntityName
valueForKey:entityName];
+ NSArray *properties = [cdPropertiesByEntityName
valueForKey:entityName];
+ [cdEntity setProperties:properties];
+ }
+
+ return [cdModel autorelease];
+}
+
[EMAIL PROTECTED]
Added: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjAttribute.h
URL:
http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjAttribute.h?view=auto&rev=447531
==============================================================================
--- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjAttribute.h
(added)
+++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjAttribute.h Mon
Sep 18 13:06:18 2006
@@ -0,0 +1,36 @@
+/*****************************************************************
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+****************************************************************/
+
+#import <Cocoa/Cocoa.h>
+
+#import "CAYObjEntity.h"
+
[EMAIL PROTECTED] CAYObjEntity;
+
[EMAIL PROTECTED] CAYObjAttribute : NSObject <NSCoding> {
+
+ NSString *name;
+ CAYObjEntity *objEntity;
+
+}
+
+-(void)setName:(NSString *)n;
+-(NSString *)name;
+
[EMAIL PROTECTED]
Added: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjAttribute.m
URL:
http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjAttribute.m?view=auto&rev=447531
==============================================================================
--- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjAttribute.m
(added)
+++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjAttribute.m Mon
Sep 18 13:06:18 2006
@@ -0,0 +1,56 @@
+/*****************************************************************
+* Licensed to the Apache Software Foundation (ASF) under one
+* or more contributor license agreements. See the NOTICE file
+* distributed with this work for additional information
+* regarding copyright ownership. The ASF licenses this file
+* to you under the Apache License, Version 2.0 (the
+* "License"); you may not use this file except in compliance
+* with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing,
+* software distributed under the License is distributed on an
+* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+* KIND, either express or implied. See the License for the
+* specific language governing permissions and limitations
+* under the License.
+****************************************************************/
+
+#import "CAYObjAttribute.h"
+
+
[EMAIL PROTECTED] CAYObjAttribute
+
+-(id)initWithCoder:(NSCoder*)coder
+{
+ [super init];
+ [self setName:[coder decodeObjectForKey:@"name"]];
+
+ return self;
+}
+
+-(void)encodeWithCoder:(NSCoder*)coder
+{
+ [coder encodeObject:name forKey:@"name"];
+}
+
+-(void)setName:(NSString *)n
+{
+ [n retain];
+ [name release];
+ name = n;
+}
+
+-(NSString *)name
+{
+ return name;
+}
+
+-(void)dealloc
+{
+ [self setName:nil];
+ [super dealloc];
+}
+
[EMAIL PROTECTED]
Modified:
incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CocoaCayenne.xcodeproj/project.pbxproj
URL:
http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CocoaCayenne.xcodeproj/project.pbxproj?view=diff&rev=447531&r1=447530&r2=447531
==============================================================================
---
incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CocoaCayenne.xcodeproj/project.pbxproj
(original)
+++
incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CocoaCayenne.xcodeproj/project.pbxproj
Mon Sep 18 13:06:18 2006
@@ -7,6 +7,8 @@
objects = {
/* Begin PBXBuildFile section */
+ 4407C1320ABAD50D0065409F /* CAYObjAttribute.h in Headers */ =
{isa = PBXBuildFile; fileRef = 4407C1300ABAD50D0065409F /* CAYObjAttribute.h
*/; settings = {ATTRIBUTES = (Public, ); }; };
+ 4407C1330ABAD50D0065409F /* CAYObjAttribute.m in Sources */ =
{isa = PBXBuildFile; fileRef = 4407C1310ABAD50D0065409F /* CAYObjAttribute.m
*/; };
4421E61E0AA4EE2D00FBE975 /* CAYNodeIdChangeOperation.h in
Headers */ = {isa = PBXBuildFile; fileRef = 4421E61C0AA4EE2D00FBE975 /*
CAYNodeIdChangeOperation.h */; settings = {ATTRIBUTES = (Public, ); }; };
4421E61F0AA4EE2D00FBE975 /* CAYNodeIdChangeOperation.m in
Sources */ = {isa = PBXBuildFile; fileRef = 4421E61D0AA4EE2D00FBE975 /*
CAYNodeIdChangeOperation.m */; };
442607380AA4B8DE00F0A01F /* CAYNodeCreateOperation.h in Headers
*/ = {isa = PBXBuildFile; fileRef = 442607360AA4B8DE00F0A01F /*
CAYNodeCreateOperation.h */; settings = {ATTRIBUTES = (Public, ); }; };
@@ -67,6 +69,8 @@
444DAB1A0AACB74C006E1768 /* CAYArcCreateOperation.m in Sources
*/ = {isa = PBXBuildFile; fileRef = 444DAB180AACB74C006E1768 /*
CAYArcCreateOperation.m */; };
444DAB270AACB7B1006E1768 /* CAYArcDeleteOperation.h in Headers
*/ = {isa = PBXBuildFile; fileRef = 444DAB250AACB7B1006E1768 /*
CAYArcDeleteOperation.h */; settings = {ATTRIBUTES = (Public, ); }; };
444DAB280AACB7B1006E1768 /* CAYArcDeleteOperation.m in Sources
*/ = {isa = PBXBuildFile; fileRef = 444DAB260AACB7B1006E1768 /*
CAYArcDeleteOperation.m */; };
+ 44BD0F9D0ABF08320005EE1E /* CAYDataMapIO.h in Headers */ = {isa
= PBXBuildFile; fileRef = 44BD0F9B0ABF08320005EE1E /* CAYDataMapIO.h */;
settings = {ATTRIBUTES = (Public, ); }; };
+ 44BD0F9E0ABF08320005EE1E /* CAYDataMapIO.m in Sources */ = {isa
= PBXBuildFile; fileRef = 44BD0F9C0ABF08320005EE1E /* CAYDataMapIO.m */; };
44FE798F0AA3790C0040BB78 /* HessianObjC.framework in Frameworks
*/ = {isa = PBXBuildFile; fileRef = 44FE798E0AA3790C0040BB78 /*
HessianObjC.framework */; };
8DC2EF530486A6940098B216 /* InfoPlist.strings in Resources */ =
{isa = PBXBuildFile; fileRef = 089C1666FE841158C02AAC07 /* InfoPlist.strings
*/; };
8DC2EF570486A6940098B216 /* Cocoa.framework in Frameworks */ =
{isa = PBXBuildFile; fileRef = 1058C7B1FEA5585E11CA2CBB /* Cocoa.framework */;
};
@@ -78,6 +82,8 @@
089C1667FE841158C02AAC07 /* English */ = {isa =
PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings;
name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>";
};
1058C7B1FEA5585E11CA2CBB /* Cocoa.framework */ = {isa =
PBXFileReference; lastKnownFileType = wrapper.framework; name =
Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree
= "<absolute>"; };
32DBCF5E0370ADEE00C91783 /* CocoaCayenne_Prefix.pch */ = {isa =
PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path =
CocoaCayenne_Prefix.pch; sourceTree = "<group>"; };
+ 4407C1300ABAD50D0065409F /* CAYObjAttribute.h */ = {isa =
PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path =
CAYObjAttribute.h; sourceTree = "<group>"; };
+ 4407C1310ABAD50D0065409F /* CAYObjAttribute.m */ = {isa =
PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path
= CAYObjAttribute.m; sourceTree = "<group>"; };
4421E61C0AA4EE2D00FBE975 /* CAYNodeIdChangeOperation.h */ =
{isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h;
path = CAYNodeIdChangeOperation.h; sourceTree = "<group>"; };
4421E61D0AA4EE2D00FBE975 /* CAYNodeIdChangeOperation.m */ =
{isa = PBXFileReference; fileEncoding = 4; lastKnownFileType =
sourcecode.c.objc; path = CAYNodeIdChangeOperation.m; sourceTree = "<group>"; };
442607360AA4B8DE00F0A01F /* CAYNodeCreateOperation.h */ = {isa
= PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path
= CAYNodeCreateOperation.h; sourceTree = "<group>"; };
@@ -138,6 +144,8 @@
444DAB180AACB74C006E1768 /* CAYArcCreateOperation.m */ = {isa =
PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path
= CAYArcCreateOperation.m; sourceTree = "<group>"; };
444DAB250AACB7B1006E1768 /* CAYArcDeleteOperation.h */ = {isa =
PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path =
CAYArcDeleteOperation.h; sourceTree = "<group>"; };
444DAB260AACB7B1006E1768 /* CAYArcDeleteOperation.m */ = {isa =
PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path
= CAYArcDeleteOperation.m; sourceTree = "<group>"; };
+ 44BD0F9B0ABF08320005EE1E /* CAYDataMapIO.h */ = {isa =
PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path =
CAYDataMapIO.h; sourceTree = "<group>"; };
+ 44BD0F9C0ABF08320005EE1E /* CAYDataMapIO.m */ = {isa =
PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path
= CAYDataMapIO.m; sourceTree = "<group>"; };
44FE798E0AA3790C0040BB78 /* HessianObjC.framework */ = {isa =
PBXFileReference; lastKnownFileType = wrapper.framework; name =
HessianObjC.framework; path = /Library/Frameworks/HessianObjC.framework;
sourceTree = "<absolute>"; };
8DC2EF5A0486A6940098B216 /* Info.plist */ = {isa =
PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path =
Info.plist; sourceTree = "<group>"; };
8DC2EF5B0486A6940098B216 /* CocoaCayenne.framework */ = {isa =
PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0;
path = CocoaCayenne.framework; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -204,20 +212,13 @@
44463DCC0AA37586006BAA58 /* message */,
44463DCD0AA37590006BAA58 /* graph */,
44463DCE0AA375F8006BAA58 /* query */,
- 44463D710AA37577006BAA58 /*
CAYClientObjRelationship.h */,
- 44463D720AA37577006BAA58 /*
CAYClientObjRelationship.m */,
- 44463D750AA37577006BAA58 /* CAYDataMap.h */,
- 44463D760AA37577006BAA58 /* CAYDataMap.m */,
- 44463D770AA37577006BAA58 /* CAYEntityResolver.h
*/,
- 44463D780AA37577006BAA58 /* CAYEntityResolver.m
*/,
+ 4407C06F0ABACE700065409F /* model */,
44463D7B0AA37577006BAA58 /*
CAYGenericResponse.h */,
44463D7C0AA37577006BAA58 /*
CAYGenericResponse.m */,
44463D850AA37577006BAA58 /* CAYObjectContext.h
*/,
44463D860AA37577006BAA58 /* CAYObjectContext.m
*/,
44463D870AA37577006BAA58 /* CAYObjectId.h */,
44463D880AA37577006BAA58 /* CAYObjectId.m */,
- 44463D890AA37577006BAA58 /* CAYObjEntity.h */,
- 44463D8A0AA37577006BAA58 /* CAYObjEntity.m */,
44463D8B0AA37577006BAA58 /*
CAYPersistentObject.h */,
44463D8C0AA37577006BAA58 /*
CAYPersistentObject.m */,
44463D930AA37577006BAA58 /* CAYRemoteSession.h
*/,
@@ -254,6 +255,25 @@
name = "Other Sources";
sourceTree = "<group>";
};
+ 4407C06F0ABACE700065409F /* model */ = {
+ isa = PBXGroup;
+ children = (
+ 44463D770AA37577006BAA58 /* CAYEntityResolver.h
*/,
+ 44463D780AA37577006BAA58 /* CAYEntityResolver.m
*/,
+ 44463D750AA37577006BAA58 /* CAYDataMap.h */,
+ 44463D760AA37577006BAA58 /* CAYDataMap.m */,
+ 44463D890AA37577006BAA58 /* CAYObjEntity.h */,
+ 44463D8A0AA37577006BAA58 /* CAYObjEntity.m */,
+ 44463D710AA37577006BAA58 /*
CAYClientObjRelationship.h */,
+ 44463D720AA37577006BAA58 /*
CAYClientObjRelationship.m */,
+ 4407C1300ABAD50D0065409F /* CAYObjAttribute.h
*/,
+ 4407C1310ABAD50D0065409F /* CAYObjAttribute.m
*/,
+ 44BD0F9B0ABF08320005EE1E /* CAYDataMapIO.h */,
+ 44BD0F9C0ABF08320005EE1E /* CAYDataMapIO.m */,
+ );
+ name = model;
+ sourceTree = "<group>";
+ };
44463DCB0AA3757F006BAA58 /* fault */ = {
isa = PBXGroup;
children = (
@@ -366,6 +386,8 @@
444DA8050AA61E54006E1768 /* CAYCocoaCayenne.h
in Headers */,
444DAB190AACB74C006E1768 /*
CAYArcCreateOperation.h in Headers */,
444DAB270AACB7B1006E1768 /*
CAYArcDeleteOperation.h in Headers */,
+ 4407C1320ABAD50D0065409F /* CAYObjAttribute.h
in Headers */,
+ 44BD0F9D0ABF08320005EE1E /* CAYDataMapIO.h in
Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -453,6 +475,8 @@
444DA8060AA61E54006E1768 /* CAYCocoaCayenne.m
in Sources */,
444DAB1A0AACB74C006E1768 /*
CAYArcCreateOperation.m in Sources */,
444DAB280AACB7B1006E1768 /*
CAYArcDeleteOperation.m in Sources */,
+ 4407C1330ABAD50D0065409F /* CAYObjAttribute.m
in Sources */,
+ 44BD0F9E0ABF08320005EE1E /* CAYDataMapIO.m in
Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};