This is DBEntity.h in view mode; [Download] [Up]
/*
** DBEntity.h
** Database Kit, Release 3.0
** Copyright (c) 1992, NeXT Computer, Inc. All rights reserved.
*/
#import <objc/Object.h>
#import <dbkit/protocols.h>
@class DBDatabase;
@class NXImage;
/*
** DBEntities are used to represent the gross structure of a database --
** they represent data aggregates in the database, such as tables in a
** relational database, objects in an object repository, or news stories on
** newswire.
**
** DBEntities contain a list of "property" objects, which obey the DBProperties
** protocol. These properties are a collection of attributes, and/or
** relationships, and/or other user-defined modelling objects.
*/
@interface DBEntity : Object <DBEntities, DBExpressionValues>
{
id database; /* database that instantiated entity */
@private
id _propertyNameExpr; /* name of entity */
id _internalNameExpr; /* name used to locate entity in server */
id _contentsList; /* combined list of attributes/relationships */
id _image; /* image displayed in Interface Builder */
id _private;
struct {
BOOL loaded:1; /* used to implement "lazy" entities */
BOOL hidden:1; /* is entity invisible in browsers? */
int _RESERVED:14;
} _flags;
}
+ initialize;
/*
** This is used in the context of a "lazy" dictionary. If this flag is set,
** the next access any component of the entity will cause it to call the
** database with a populateEntity: message.
**
** This mechanism could be used to insure efficient, yet safe, access to a
** changing db. By setting loadOnAccess, you can insure that the entity
** will be reloaded from the model's server on the next access to its
** contents.
*/
- initWithName:(const char*)aName loadableFromDatabase:(DBDatabase*)aDatabase;
- copyFromZone:(NXZone*)z;
- free;
- addProperty:(id<DBProperties>)aProperty;
- setInternalName:(const char *)aName;
- (const char *)internalName;
- (NXImage*)image;
- setImage:(NXImage*)anImage;
- (BOOL)isHidden;
- setHidden:(BOOL)yn;
- read:(NXTypedStream*)ts;
- write:(NXTypedStream*)ts;
@end
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.