Author: torehalset Date: Fri Sep 29 00:38:19 2006 New Revision: 451146 URL: http://svn.apache.org/viewvc?view=rev&rev=451146 Log: validation work in progress. include DbEntity-stuff as it will(?) be used for client side validation before commit.
Added: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYBeanValidationFailure.h incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYBeanValidationFailure.m incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbAttribute.h incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbAttribute.m incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbEntity.h incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbEntity.m incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYEntity.h incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYEntity.m incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationException.h incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationException.m incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationResult.h incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationResult.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/CAYObjEntity.h incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjEntity.m incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjectContext.m incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CocoaCayenne.xcodeproj/project.pbxproj Added: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYBeanValidationFailure.h URL: http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYBeanValidationFailure.h?view=auto&rev=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYBeanValidationFailure.h (added) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYBeanValidationFailure.h Fri Sep 29 00:38:19 2006 @@ -0,0 +1,38 @@ +/***************************************************************** +* 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> + + [EMAIL PROTECTED] CAYBeanValidationFailure : NSObject <NSCoding> { + + id source; + id error; + NSString *property; + +} + +-(void)setSource:(id)s; +-(id)source; +-(void)setError:(id)er; +-(id)error; +-(void)setProperty:(NSString *)prop; +-(NSString *)property; + [EMAIL PROTECTED] Added: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYBeanValidationFailure.m URL: http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYBeanValidationFailure.m?view=auto&rev=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYBeanValidationFailure.m (added) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYBeanValidationFailure.m Fri Sep 29 00:38:19 2006 @@ -0,0 +1,92 @@ +/***************************************************************** +* 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 "CAYBeanValidationFailure.h" + + [EMAIL PROTECTED] CAYBeanValidationFailure + +-(id)initWithCoder:(NSCoder*)coder +{ + [super init]; + [self setSource:[coder decodeObjectForKey:@"source"]]; + [self setError:[coder decodeObjectForKey:@"error"]]; + [self setProperty:[coder decodeObjectForKey:@"property"]]; + return self; +} + +-(void)encodeWithCoder:(NSCoder*)coder +{ + [coder encodeObject:[self source] forKey:@"source"]; + [coder encodeObject:[self error] forKey:@"error"]; + [coder encodeObject:[self property] forKey:@"property"]; +} + +-(void)setSource:(id)s +{ + [s retain]; + [source release]; + source = s; +} + +-(id)source +{ + return source; +} + +-(void)setError:(id)er +{ + [er retain]; + [error release]; + error = er; +} + +-(id)error +{ + return error; +} + +-(void)setProperty:(NSString *)prop +{ + [prop retain]; + [property release]; + property = prop; +} + +-(NSString *)property +{ + return property; +} + +-(NSString *)description +{ + NSString *description = [[NSString alloc] initWithFormat:@"%@ {error = %@, property = %@, source = [EMAIL PROTECTED]", [self class], [self error], [self property], [self source]]; + [description autorelease]; + return description; +} + +-(void)dealloc +{ + [self setSource:nil]; + [self setError:nil]; + [self setProperty:nil]; + [super dealloc]; +} + [EMAIL PROTECTED] Modified: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYCocoaCayenne.m URL: http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYCocoaCayenne.m?view=diff&rev=451146&r1=451145&r2=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYCocoaCayenne.m (original) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYCocoaCayenne.m Fri Sep 29 00:38:19 2006 @@ -34,6 +34,8 @@ [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:@"CAYDbEntity" forKey:@"org.apache.cayenne.map.DbEntity"]; + [classMapping setObject:@"CAYDbAttribute" forKey:@"org.apache.cayenne.map.DbAttribute"]; [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=451146&r1=451145&r2=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMap.h (original) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMap.h Fri Sep 29 00:38:19 2006 @@ -25,6 +25,7 @@ NSString *name; NSMutableDictionary *objEntityMap; + NSMutableDictionary *dbEntityMap; } @@ -32,6 +33,8 @@ -(NSString *)name; -(void)setObjEntityMap:(NSMutableDictionary *)oem; -(NSMutableDictionary *)objEntityMap; +-(void)setDbEntityMap:(NSMutableDictionary *)dem; +-(NSMutableDictionary *)dbEntityMap; -(NSString *)classNameForObjEntity:(CAYObjEntity *)entity; Modified: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMap.m URL: http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMap.m?view=diff&rev=451146&r1=451145&r2=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMap.m (original) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDataMap.m Fri Sep 29 00:38:19 2006 @@ -27,18 +27,21 @@ [super init]; [self setName:[coder decodeObjectForKey:@"name"]]; [self setObjEntityMap:[coder decodeObjectForKey:@"objEntityMap"]]; + [self setDbEntityMap:[coder decodeObjectForKey:@"dbEntityMap"]]; // remove extra entry created by hessian framework // TODO: fix in framework? [[self objEntityMap] removeObjectForKey:@"hessianClassName"]; + [[self dbEntityMap] removeObjectForKey:@"hessianClassName"]; return self; } -(void)encodeWithCoder:(NSCoder*)coder { - [coder encodeObject:name forKey:@"name"]; - [coder encodeObject:objEntityMap forKey:@"objEntityMap"]; + [coder encodeObject:[self name] forKey:@"name"]; + [coder encodeObject:[self objEntityMap] forKey:@"objEntityMap"]; + [coder encodeObject:[self dbEntityMap] forKey:@"dbEntityMap"]; } -(void)setName:(NSString *)n @@ -65,6 +68,18 @@ return objEntityMap; } +-(void)setDbEntityMap:(NSMutableDictionary *)dem +{ + [dem retain]; + [dbEntityMap release]; + dbEntityMap = dem; +} + +-(NSMutableDictionary *)dbEntityMap +{ + return dbEntityMap; +} + -(NSString *)classNameForObjEntity:(CAYObjEntity *)entity; { // TODO: handle prefix for class name. Like MYPROJECTArtist @@ -75,6 +90,7 @@ { [self setName:nil]; [self setObjEntityMap:nil]; + [self setDbEntityMap:nil]; [super dealloc]; } Added: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbAttribute.h URL: http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbAttribute.h?view=auto&rev=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbAttribute.h (added) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbAttribute.h Fri Sep 29 00:38:19 2006 @@ -0,0 +1,40 @@ +/***************************************************************** +* 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> + [EMAIL PROTECTED] CAYDbAttribute : NSObject <NSCoding> { + + NSString *name; + BOOL mandatory; + BOOL primaryKey; + unsigned int maxLength; + +} + +-(void)setName:(NSString *)n; +-(NSString *)name; +-(void)setMandatory:(BOOL)m; +-(BOOL)isMandatory; +-(void)setPrimaryKey:(BOOL)pk; +-(BOOL)isPrimaryKey; +-(void)setMaxLength:(unsigned int)ml; +-(unsigned int)maxLength; + [EMAIL PROTECTED] Added: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbAttribute.m URL: http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbAttribute.m?view=auto&rev=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbAttribute.m (added) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbAttribute.m Fri Sep 29 00:38:19 2006 @@ -0,0 +1,92 @@ +/***************************************************************** +* 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 "CAYDbAttribute.h" + + [EMAIL PROTECTED] CAYDbAttribute + +-(id)initWithCoder:(NSCoder*)coder +{ + [super init]; + [self setName:[coder decodeObjectForKey:@"name"]]; + [self setMandatory:[coder decodeBoolForKey:@"mandatory"]]; + [self setPrimaryKey:[coder decodeBoolForKey:@"primaryKey"]]; + [self setMaxLength:[coder decodeIntForKey:@"maxLength"]]; + + return self; +} + +-(void)encodeWithCoder:(NSCoder*)coder +{ + [coder encodeObject:[self name] forKey:@"name"]; + [coder encodeBool:[self isMandatory] forKey:@"mandatory"]; + [coder encodeBool:[self isPrimaryKey] forKey:@"primaryKey"]; + [coder encodeInt:[self maxLength] forKey:@"maxLength"]; +} + +-(void)setName:(NSString *)n +{ + [n retain]; + [name release]; + name = n; +} + +-(NSString *)name +{ + return name; +} + +-(void)setMandatory:(BOOL)m +{ + mandatory = m; +} + +-(BOOL)isMandatory +{ + return mandatory; +} + +-(void)setPrimaryKey:(BOOL)pk +{ + primaryKey = pk; +} + +-(BOOL)isPrimaryKey +{ + return primaryKey; +} + +-(void)setMaxLength:(unsigned int)ml +{ + maxLength = ml; +} + +-(unsigned int)maxLength +{ + return maxLength; +} + +-(void)dealloc +{ + [self setName:nil]; + [super dealloc]; +} + [EMAIL PROTECTED] Added: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbEntity.h URL: http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbEntity.h?view=auto&rev=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbEntity.h (added) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbEntity.h Fri Sep 29 00:38:19 2006 @@ -0,0 +1,39 @@ +/***************************************************************** +* 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 "CAYEntity.h" + [EMAIL PROTECTED] CAYDbEntity : CAYEntity <NSCoding> { + + NSString *catalog; + NSString *schema; + NSArray *primaryKey; + +} + +-(void)setCatalog:(NSString *)c; +-(NSString *)catalog; +-(void)setSchema:(NSString *)s; +-(NSString *)schema; +-(void)setPrimaryKey:(NSArray *)pk; +-(NSArray *)primaryKey; + [EMAIL PROTECTED] Added: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbEntity.m URL: http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbEntity.m?view=auto&rev=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbEntity.m (added) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYDbEntity.m Fri Sep 29 00:38:19 2006 @@ -0,0 +1,87 @@ +/***************************************************************** +* 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 "CAYDbEntity.h" + + [EMAIL PROTECTED] CAYDbEntity + +-(id)initWithCoder:(NSCoder*)coder +{ + [super initWithCoder:coder]; + [self setCatalog:[coder decodeObjectForKey:@"catalog"]]; + [self setSchema:[coder decodeObjectForKey:@"schema"]]; + [self setPrimaryKey:[coder decodeObjectForKey:@"primaryKey"]]; + + return self; +} + +-(void)encodeWithCoder:(NSCoder*)coder +{ + [super encodeWithCoder:coder]; + [coder encodeObject:[self catalog] forKey:@"catalog"]; + [coder encodeObject:[self schema] forKey:@"schema"]; + [coder encodeObject:[self primaryKey] forKey:@"primaryKey"]; +} + +-(void)setCatalog:(NSString *)c +{ + [c retain]; + [catalog release]; + catalog = c; +} + +-(NSString *)catalog +{ + return catalog; +} + +-(void)setSchema:(NSString *)s +{ + [s retain]; + [schema release]; + schema = s; +} + +-(NSString *)schema +{ + return schema; +} + +-(void)setPrimaryKey:(NSArray *)pk +{ + [pk retain]; + [primaryKey release]; + primaryKey = pk; +} + +-(NSArray *)primaryKey +{ + return primaryKey; +} + +-(void)dealloc +{ + [self setCatalog:nil]; + [self setSchema:nil]; + [self setPrimaryKey:nil]; + [super dealloc]; +} + [EMAIL PROTECTED] Added: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYEntity.h URL: http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYEntity.h?view=auto&rev=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYEntity.h (added) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYEntity.h Fri Sep 29 00:38:19 2006 @@ -0,0 +1,38 @@ +/***************************************************************** +* 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> + + [EMAIL PROTECTED] CAYEntity : NSObject <NSCoding> { + + NSMutableDictionary *attributes; + NSString *name; + NSMutableDictionary *relationships; + +} + +-(void)setAttributes:(NSMutableDictionary *)a; +-(NSMutableDictionary *)attributes; +-(void)setName:(NSString *)n; +-(NSString *)name; +-(void)setRelationships:(NSMutableDictionary *)r; +-(NSMutableDictionary *)relationships; + [EMAIL PROTECTED] Added: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYEntity.m URL: http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYEntity.m?view=auto&rev=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYEntity.m (added) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYEntity.m Fri Sep 29 00:38:19 2006 @@ -0,0 +1,91 @@ +/***************************************************************** +* 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 "CAYEntity.h" + + [EMAIL PROTECTED] CAYEntity + +-(id)initWithCoder:(NSCoder*)coder +{ + [super init]; + [self setAttributes:[coder decodeObjectForKey:@"attributes"]]; + [self setName:[coder decodeObjectForKey:@"name"]]; + [self setRelationships:[coder decodeObjectForKey:@"relationships"]]; + + // remove extra entry created by hessian framework + // TODO: fix in framework? + [[self relationships] removeObjectForKey:@"hessianClassName"]; + [[self attributes] removeObjectForKey:@"hessianClassName"]; + + return self; +} + +-(void)encodeWithCoder:(NSCoder*)coder +{ + [coder encodeObject:[self attributes] forKey:@"attributes"]; + [coder encodeObject:[self name] forKey:@"name"]; + [coder encodeObject:[self relationships] forKey:@"relationships"]; +} + +-(void)setAttributes:(NSMutableDictionary *)a +{ + [a retain]; + [attributes release]; + attributes = a; +} + +-(NSMutableDictionary *)attributes +{ + return attributes; +} + +-(void)setName:(NSString *)n +{ + [n retain]; + [name release]; + name = n; +} + +-(NSString *)name +{ + return name; +} + +-(void)setRelationships:(NSMutableDictionary *)r +{ + [r retain]; + [relationships release]; + relationships = r; +} + +-(NSMutableDictionary *)relationships +{ + return relationships; +} + +-(void)dealloc +{ + [self setAttributes:nil]; + [self setName:nil]; + [self setRelationships:nil]; + [super dealloc]; +} + [EMAIL PROTECTED] Modified: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjEntity.h URL: http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjEntity.h?view=diff&rev=451146&r1=451145&r2=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjEntity.h (original) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjEntity.h Fri Sep 29 00:38:19 2006 @@ -19,23 +19,15 @@ #import <Cocoa/Cocoa.h> +#import "CAYEntity.h" [EMAIL PROTECTED] CAYObjEntity : NSObject <NSCoding> { [EMAIL PROTECTED] CAYObjEntity : CAYEntity <NSCoding> { - NSMutableDictionary *attributes; - NSString *name; NSString *serverClassName; - NSMutableDictionary *relationships; } --(void)setAttributes:(NSMutableDictionary *)a; --(NSMutableDictionary *)attributes; --(void)setName:(NSString *)n; --(NSString *)name; -(void)setServerClassName:(NSString *)n; -(NSString *)serverClassName; --(void)setRelationships:(NSMutableDictionary *)r; --(NSMutableDictionary *)relationships; @end Modified: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjEntity.m URL: http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjEntity.m?view=diff&rev=451146&r1=451145&r2=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjEntity.m (original) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjEntity.m Fri Sep 29 00:38:19 2006 @@ -24,50 +24,16 @@ -(id)initWithCoder:(NSCoder*)coder { - [super init]; - [self setAttributes:[coder decodeObjectForKey:@"attributes"]]; - [self setName:[coder decodeObjectForKey:@"name"]]; + [super initWithCoder:coder]; [self setServerClassName:[coder decodeObjectForKey:@"className"]]; - [self setRelationships:[coder decodeObjectForKey:@"relationships"]]; - - // remove extra entry created by hessian framework - // TODO: fix in framework? - [[self relationships] removeObjectForKey:@"hessianClassName"]; - [[self attributes] removeObjectForKey:@"hessianClassName"]; return self; } -(void)encodeWithCoder:(NSCoder*)coder { - [coder encodeObject:attributes forKey:@"attributes"]; - [coder encodeObject:name forKey:@"name"]; + [super encodeWithCoder:coder]; [coder encodeObject:serverClassName forKey:@"className"]; - [coder encodeObject:relationships forKey:@"relationships"]; -} - --(void)setAttributes:(NSMutableDictionary *)a -{ - [a retain]; - [attributes release]; - attributes = a; -} - --(NSMutableDictionary *)attributes -{ - return attributes; -} - --(void)setName:(NSString *)n -{ - [n retain]; - [name release]; - name = n; -} - --(NSString *)name -{ - return name; } -(void)setServerClassName:(NSString *)n @@ -79,29 +45,13 @@ -(NSString *)serverClassName { - return serverClassName; -} - --(void)setRelationships:(NSMutableDictionary *)r -{ - [r retain]; - [relationships release]; - relationships = r; -} - --(NSMutableDictionary *)relationships -{ - return relationships; + return serverClassName; } -(void)dealloc { - [attributes release]; - [name release]; - [relationships release]; - [serverClassName release]; + [self setServerClassName:nil]; [super dealloc]; } - @end Modified: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjectContext.m URL: http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjectContext.m?view=diff&rev=451146&r1=451145&r2=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjectContext.m (original) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYObjectContext.m Fri Sep 29 00:38:19 2006 @@ -194,15 +194,12 @@ -(void)commitChanges { - NSLog(@"%i unsaved changes before commit. %@", [diffs count], diffs); + NSLog(@"DEBUG: %i unsaved changes before commit. %@", [diffs count], diffs); CAYCompoundDiff *diffWithDiffs = [[CAYCompoundDiff alloc] initWithDiffs:diffs]; - // TODO: handle different types? CAYSyncMessage *msg = [[CAYSyncMessage alloc] initWithObjectSource:nil type:2 senderChanges:diffWithDiffs]; - // TODO: handle result? id result = [[self connection] sendMessage:msg]; - NSLog(@"commit result: %@", result); - [diffs removeAllObjects]; + NSLog(@"DEBUG: commit result: %@", result); // apply any resulting diffs. typicaly server generated primary key values // for new values @@ -210,15 +207,23 @@ { CAYNodeDiff *resultDiff = (CAYNodeDiff *)result; [resultDiff apply:objectByObjectId]; + // even if no diffs a CAYNodeDiff are returned. so this is the + // place to clear out the diffs + [diffs removeAllObjects]; + } + else if ([result isKindOfClass:[NSError class]]) + { + // TODO: handle returned NSError + NSLog(@"ERROR: not able to handle NSError commit result", [result class]); } else { - NSLog(@"ERROR: not able to handle commit result of type %@", [result class]); + NSLog(@"ERROR: unknown commit result type %@", [result class]); } [msg release]; [diffWithDiffs release]; - NSLog(@"%i unsaved changes after commit", [diffs count]); + NSLog(@"DEBUG: %i unsaved changes after commit", [diffs count]); } -(void)setEntityResolver:(CAYEntityResolver *)er Added: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationException.h URL: http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationException.h?view=auto&rev=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationException.h (added) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationException.h Fri Sep 29 00:38:19 2006 @@ -0,0 +1,34 @@ +/***************************************************************** +* 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 "CAYCayenneRuntimeException.h" +#import "CAYValidationResult.h" + [EMAIL PROTECTED] CAYValidationException : CAYCayenneRuntimeException <NSCoding> { + + CAYValidationResult *result; + +} + +-(void)setResult:(CAYValidationResult *)res; +-(CAYValidationResult *)result; + [EMAIL PROTECTED] Added: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationException.m URL: http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationException.m?view=auto&rev=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationException.m (added) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationException.m Fri Sep 29 00:38:19 2006 @@ -0,0 +1,63 @@ +/***************************************************************** +* 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 "CAYValidationException.h" + + [EMAIL PROTECTED] CAYValidationException + +-(id)initWithCoder:(NSCoder*)coder +{ + [super initWithCoder:coder]; + [self setResult:[coder decodeObjectForKey:@"result"]]; + return self; +} + +-(void)encodeWithCoder:(NSCoder*)coder +{ + [super encodeWithCoder:coder]; + [coder encodeObject:[self result] forKey:@"result"]; +} + +-(void)setResult:(CAYValidationResult *)res +{ + [res retain]; + [result release]; + result = res; +} + +-(CAYValidationResult *)result +{ + return result; +} + +-(NSString *)description +{ + NSString *description = [[NSString alloc] initWithFormat:@"%@ {detailMessage = %@, result = [EMAIL PROTECTED]", [self class], [self detailMessage], [self result]]; + [description autorelease]; + return description; +} + +-(void)dealloc +{ + [self setResult:nil]; + [super dealloc]; +} + [EMAIL PROTECTED] Added: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationResult.h URL: http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationResult.h?view=auto&rev=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationResult.h (added) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationResult.h Fri Sep 29 00:38:19 2006 @@ -0,0 +1,30 @@ +/***************************************************************** +* 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> + + [EMAIL PROTECTED] CAYValidationResult : NSObject <NSCoding> { + NSMutableArray *failures; +} + +-(void)setFailures:(NSMutableArray *)fails; +-(NSMutableArray *)failures; + [EMAIL PROTECTED] Added: incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationResult.m URL: http://svn.apache.org/viewvc/incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationResult.m?view=auto&rev=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationResult.m (added) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CAYValidationResult.m Fri Sep 29 00:38:19 2006 @@ -0,0 +1,61 @@ +/***************************************************************** +* 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 "CAYValidationResult.h" + [EMAIL PROTECTED] CAYValidationResult + +-(id)initWithCoder:(NSCoder*)coder +{ + [super init]; + [self setFailures:[coder decodeObjectForKey:@"failures"]]; + return self; +} + +-(void)encodeWithCoder:(NSCoder*)coder +{ + [coder encodeObject:[self failures] forKey:@"failures"]; +} + +-(void)setFailures:(NSMutableArray *)fails +{ + [fails retain]; + [failures release]; + failures = fails; +} + +-(NSMutableArray *)failures +{ + return failures; +} + +-(NSString *)description +{ + NSString *description = [[NSString alloc] initWithFormat:@"%@ {failures = [EMAIL PROTECTED]", [self class], [self failures]]; + [description autorelease]; + return description; +} + +-(void)dealloc +{ + [self setFailures: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=451146&r1=451145&r2=451146 ============================================================================== --- incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CocoaCayenne.xcodeproj/project.pbxproj (original) +++ incubator/cayenne/sandbox/CocoaCayenne/CocoaCayenne/CocoaCayenne.xcodeproj/project.pbxproj Fri Sep 29 00:38:19 2006 @@ -69,6 +69,22 @@ 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 */; }; + 444F26280AC973C70097052B /* CAYValidationException.h in Headers */ = {isa = PBXBuildFile; fileRef = 444F26260AC973C70097052B /* CAYValidationException.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 444F26290AC973C70097052B /* CAYValidationException.m in Sources */ = {isa = PBXBuildFile; fileRef = 444F26270AC973C70097052B /* CAYValidationException.m */; }; + 444F262E0AC9742D0097052B /* CAYBeanValidationFailure.h in Headers */ = {isa = PBXBuildFile; fileRef = 444F262C0AC9742D0097052B /* CAYBeanValidationFailure.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 444F262F0AC9742D0097052B /* CAYBeanValidationFailure.m in Sources */ = {isa = PBXBuildFile; fileRef = 444F262D0AC9742D0097052B /* CAYBeanValidationFailure.m */; }; + 444F263F0AC975E50097052B /* CAYValidationResult.h in Headers */ = {isa = PBXBuildFile; fileRef = 444F263D0AC975E50097052B /* CAYValidationResult.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 444F26400AC975E50097052B /* CAYValidationResult.m in Sources */ = {isa = PBXBuildFile; fileRef = 444F263E0AC975E50097052B /* CAYValidationResult.m */; }; + 444F27A80AC9EDFF0097052B /* CAYCayenneRuntimeException.h in Headers */ = {isa = PBXBuildFile; fileRef = 444F27A60AC9EDFF0097052B /* CAYCayenneRuntimeException.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 444F27A90AC9EDFF0097052B /* CAYCayenneRuntimeException.m in Sources */ = {isa = PBXBuildFile; fileRef = 444F27A70AC9EDFF0097052B /* CAYCayenneRuntimeException.m */; }; + 444F27F50AC9F4B80097052B /* CAYMissingSessionException.h in Headers */ = {isa = PBXBuildFile; fileRef = 444F27F30AC9F4B80097052B /* CAYMissingSessionException.h */; }; + 444F27F60AC9F4B80097052B /* CAYMissingSessionException.m in Sources */ = {isa = PBXBuildFile; fileRef = 444F27F40AC9F4B80097052B /* CAYMissingSessionException.m */; }; + 444F28B70ACC17B30097052B /* CAYDbEntity.h in Headers */ = {isa = PBXBuildFile; fileRef = 444F28B50ACC17B30097052B /* CAYDbEntity.h */; }; + 444F28B80ACC17B30097052B /* CAYDbEntity.m in Sources */ = {isa = PBXBuildFile; fileRef = 444F28B60ACC17B30097052B /* CAYDbEntity.m */; }; + 444F29210ACCF9DF0097052B /* CAYDbAttribute.h in Headers */ = {isa = PBXBuildFile; fileRef = 444F291F0ACCF9DE0097052B /* CAYDbAttribute.h */; }; + 444F29220ACCF9DF0097052B /* CAYDbAttribute.m in Sources */ = {isa = PBXBuildFile; fileRef = 444F29200ACCF9DE0097052B /* CAYDbAttribute.m */; }; + 444F292B0ACCFBAB0097052B /* CAYEntity.h in Headers */ = {isa = PBXBuildFile; fileRef = 444F29290ACCFBAB0097052B /* CAYEntity.h */; }; + 444F292C0ACCFBAB0097052B /* CAYEntity.m in Sources */ = {isa = PBXBuildFile; fileRef = 444F292A0ACCFBAB0097052B /* CAYEntity.m */; }; 448E1BA90AC0882F00D137DF /* CAYArrayController.h in Headers */ = {isa = PBXBuildFile; fileRef = 448E1BA70AC0882F00D137DF /* CAYArrayController.h */; settings = {ATTRIBUTES = (Public, ); }; }; 448E1BAA0AC0882F00D137DF /* CAYArrayController.m in Sources */ = {isa = PBXBuildFile; fileRef = 448E1BA80AC0882F00D137DF /* CAYArrayController.m */; }; 44BD0F9D0ABF08320005EE1E /* CAYDataMapIO.h in Headers */ = {isa = PBXBuildFile; fileRef = 44BD0F9B0ABF08320005EE1E /* CAYDataMapIO.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -146,6 +162,22 @@ 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>"; }; + 444F26260AC973C70097052B /* CAYValidationException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAYValidationException.h; sourceTree = "<group>"; }; + 444F26270AC973C70097052B /* CAYValidationException.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CAYValidationException.m; sourceTree = "<group>"; }; + 444F262C0AC9742D0097052B /* CAYBeanValidationFailure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAYBeanValidationFailure.h; sourceTree = "<group>"; }; + 444F262D0AC9742D0097052B /* CAYBeanValidationFailure.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CAYBeanValidationFailure.m; sourceTree = "<group>"; }; + 444F263D0AC975E50097052B /* CAYValidationResult.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAYValidationResult.h; sourceTree = "<group>"; }; + 444F263E0AC975E50097052B /* CAYValidationResult.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CAYValidationResult.m; sourceTree = "<group>"; }; + 444F27A60AC9EDFF0097052B /* CAYCayenneRuntimeException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAYCayenneRuntimeException.h; sourceTree = "<group>"; }; + 444F27A70AC9EDFF0097052B /* CAYCayenneRuntimeException.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CAYCayenneRuntimeException.m; sourceTree = "<group>"; }; + 444F27F30AC9F4B80097052B /* CAYMissingSessionException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAYMissingSessionException.h; sourceTree = "<group>"; }; + 444F27F40AC9F4B80097052B /* CAYMissingSessionException.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CAYMissingSessionException.m; sourceTree = "<group>"; }; + 444F28B50ACC17B30097052B /* CAYDbEntity.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAYDbEntity.h; sourceTree = "<group>"; }; + 444F28B60ACC17B30097052B /* CAYDbEntity.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CAYDbEntity.m; sourceTree = "<group>"; }; + 444F291F0ACCF9DE0097052B /* CAYDbAttribute.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAYDbAttribute.h; sourceTree = "<group>"; }; + 444F29200ACCF9DE0097052B /* CAYDbAttribute.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CAYDbAttribute.m; sourceTree = "<group>"; }; + 444F29290ACCFBAB0097052B /* CAYEntity.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAYEntity.h; sourceTree = "<group>"; }; + 444F292A0ACCFBAB0097052B /* CAYEntity.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CAYEntity.m; sourceTree = "<group>"; }; 448E1BA70AC0882F00D137DF /* CAYArrayController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAYArrayController.h; sourceTree = "<group>"; }; 448E1BA80AC0882F00D137DF /* CAYArrayController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CAYArrayController.m; sourceTree = "<group>"; }; 44BD0F9B0ABF08320005EE1E /* CAYDataMapIO.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CAYDataMapIO.h; sourceTree = "<group>"; }; @@ -217,6 +249,7 @@ 44463DCD0AA37590006BAA58 /* graph */, 44463DCE0AA375F8006BAA58 /* query */, 4407C06F0ABACE700065409F /* model */, + 444F26300AC974360097052B /* validation */, 44463D7B0AA37577006BAA58 /* CAYGenericResponse.h */, 44463D7C0AA37577006BAA58 /* CAYGenericResponse.m */, 44463D850AA37577006BAA58 /* CAYObjectContext.h */, @@ -231,6 +264,8 @@ 444DA8040AA61E54006E1768 /* CAYCocoaCayenne.m */, 448E1BA70AC0882F00D137DF /* CAYArrayController.h */, 448E1BA80AC0882F00D137DF /* CAYArrayController.m */, + 444F27A60AC9EDFF0097052B /* CAYCayenneRuntimeException.h */, + 444F27A70AC9EDFF0097052B /* CAYCayenneRuntimeException.m */, ); name = Classes; sourceTree = "<group>"; @@ -268,6 +303,8 @@ 44463D780AA37577006BAA58 /* CAYEntityResolver.m */, 44463D750AA37577006BAA58 /* CAYDataMap.h */, 44463D760AA37577006BAA58 /* CAYDataMap.m */, + 444F29290ACCFBAB0097052B /* CAYEntity.h */, + 444F292A0ACCFBAB0097052B /* CAYEntity.m */, 44463D890AA37577006BAA58 /* CAYObjEntity.h */, 44463D8A0AA37577006BAA58 /* CAYObjEntity.m */, 44463D710AA37577006BAA58 /* CAYClientObjRelationship.h */, @@ -276,6 +313,10 @@ 4407C1310ABAD50D0065409F /* CAYObjAttribute.m */, 44BD0F9B0ABF08320005EE1E /* CAYDataMapIO.h */, 44BD0F9C0ABF08320005EE1E /* CAYDataMapIO.m */, + 444F28B50ACC17B30097052B /* CAYDbEntity.h */, + 444F28B60ACC17B30097052B /* CAYDbEntity.m */, + 444F291F0ACCF9DE0097052B /* CAYDbAttribute.h */, + 444F29200ACCF9DE0097052B /* CAYDbAttribute.m */, ); name = model; sourceTree = "<group>"; @@ -351,10 +392,25 @@ 44463D6E0AA37577006BAA58 /* CAYClientConnection.m */, 44463D7D0AA37577006BAA58 /* CAYHessianConnection.h */, 44463D7E0AA37577006BAA58 /* CAYHessianConnection.m */, + 444F27F30AC9F4B80097052B /* CAYMissingSessionException.h */, + 444F27F40AC9F4B80097052B /* CAYMissingSessionException.m */, ); name = connection; sourceTree = "<group>"; }; + 444F26300AC974360097052B /* validation */ = { + isa = PBXGroup; + children = ( + 444F26260AC973C70097052B /* CAYValidationException.h */, + 444F26270AC973C70097052B /* CAYValidationException.m */, + 444F263D0AC975E50097052B /* CAYValidationResult.h */, + 444F263E0AC975E50097052B /* CAYValidationResult.m */, + 444F262C0AC9742D0097052B /* CAYBeanValidationFailure.h */, + 444F262D0AC9742D0097052B /* CAYBeanValidationFailure.m */, + ); + name = validation; + sourceTree = "<group>"; + }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ @@ -395,6 +451,14 @@ 4407C1320ABAD50D0065409F /* CAYObjAttribute.h in Headers */, 44BD0F9D0ABF08320005EE1E /* CAYDataMapIO.h in Headers */, 448E1BA90AC0882F00D137DF /* CAYArrayController.h in Headers */, + 444F26280AC973C70097052B /* CAYValidationException.h in Headers */, + 444F262E0AC9742D0097052B /* CAYBeanValidationFailure.h in Headers */, + 444F263F0AC975E50097052B /* CAYValidationResult.h in Headers */, + 444F27A80AC9EDFF0097052B /* CAYCayenneRuntimeException.h in Headers */, + 444F27F50AC9F4B80097052B /* CAYMissingSessionException.h in Headers */, + 444F28B70ACC17B30097052B /* CAYDbEntity.h in Headers */, + 444F29210ACCF9DF0097052B /* CAYDbAttribute.h in Headers */, + 444F292B0ACCFBAB0097052B /* CAYEntity.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -485,6 +549,14 @@ 4407C1330ABAD50D0065409F /* CAYObjAttribute.m in Sources */, 44BD0F9E0ABF08320005EE1E /* CAYDataMapIO.m in Sources */, 448E1BAA0AC0882F00D137DF /* CAYArrayController.m in Sources */, + 444F26290AC973C70097052B /* CAYValidationException.m in Sources */, + 444F262F0AC9742D0097052B /* CAYBeanValidationFailure.m in Sources */, + 444F26400AC975E50097052B /* CAYValidationResult.m in Sources */, + 444F27A90AC9EDFF0097052B /* CAYCayenneRuntimeException.m in Sources */, + 444F27F60AC9F4B80097052B /* CAYMissingSessionException.m in Sources */, + 444F28B80ACC17B30097052B /* CAYDbEntity.m in Sources */, + 444F29220ACCF9DF0097052B /* CAYDbAttribute.m in Sources */, + 444F292C0ACCFBAB0097052B /* CAYEntity.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; };