}
- (NSArray *)columnNames {
+ EOModel *model;
+ NSArray *attributes;
+
+ if (self->columnNames)
+ return self->columnNames;
+
+ model = [self _describeModel];
+ attributes = [[[model entities] lastObject] attributes];
+
+ self->columnNames = [[attributes valueForKey:@"columnName"] copy];
return self->columnNames;
}
- note that acquisition is also done on the traversal path! if the lookup
returns nil on an URL path being traversed, URL acquisition will occure
(except on non-acquisition protocols like WebDAV)
+ - if you have a path like '/Databases/MyDatabase/MyTable/MyField' and
+ 'MyField' isn't processed by MyTable (eg not yet implemented), then this
+ will return a SoDatabase object! - because acquisition will look for
+ 'MyField' in 'MyDatabase' which will create a SoDatabase.
- baseURL
- calculation of base URL requires you to either override -baseURLInContext: