Objective-C++ Preprocessor  5.0 with ARC & GC
C++ classes to enhance syntax and manage reference counting.
Instance Methods | Class Methods | Public Attributes | List of all members
OOMetaData Class Reference

#import <objsql.h>

Inheritance diagram for OOMetaData:
OORecord

Instance Methods

(id) - initClass:
 
(OOStringArray- naturalJoinTo:
 
(cOOValueDictionary- encode:
 
(cOOValueDictionary- decode:
 
- Instance Methods inherited from OORecord
(id) - OO_RETURNS
 
(id) - OO_RETURNS
 
(void) - update
 
(void) - indate
 
(void) - upsert
 
(int) - commit
 
(int) - rollback
 
(OOArray< id >) - select
 
(void) - bindToView:delegate:
 
(void) - updateFromView:
 
(id) - insert [implementation]
 
(id) - delete [implementation]
 
(void) - setNilValueForKey: [implementation]
 
(NSString *) - description [implementation]
 

Class Methods

(OOMetaData *) + metaDataForClass:
 
(OOArray< id >) + import:intoClass:
 
(OOArray< id >) + import:intoClass:delimiter:
 
(OOString+ export:delimiter:
 
(void) + bindRecord:toView:delegate:
 
(void) + updateRecord:fromView:
 
(NSString *) + ooTableTitle [implementation]
 
(OOArray< id >) + selectRecordsRelatedTo: [implementation]
 
- Class Methods inherited from OORecord
(id) + OO_AUTORETURNS
 
(id) + insertWithParent:
 
(OOArray< id >) + select
 
(OOArray< id >) + select:
 
(id) + OO_AUTORETURNS
 
(int) + importFrom:delimiter:
 
(BOOL) + exportTo:delimiter:
 

Public Attributes

OOString tableTitle
 
OOString tableName
 
OOString recordClassName
 
OOString keyColumns
 
OOStringArray ivars
 
OOStringArray columns
 
OOStringArray outcols
 
OOStringArray joinableColumns
 
OOStringArray tablesWithNaturalJoin
 
OOStringArray boxed
 
OOStringArray unbox
 
OOStringArray dates
 
OOStringArray archived
 
OOStringArray blobs
 
OOStringArray tocopy
 
OOStringArray indexes
 
OOStringDictionary types
 
OOString createTableSQL
 
Class recordClass
 

Detailed Description

Internal class storing meta data about a class and its instance variables for constructing and binding data to an associated "sqlite" table.

Definition at line 117 of file objsql.h.

Method Documentation

+ (void) bindRecord: (id)  record
toView: (OOView *)  view
delegate: (id)  delegate 

Bind a record to a view containing elements which are to display values from the record. The ivar number is selected by the subview's tag value and it's ".text" property if set to the value returned record value "stringValue" for the ivar. Supports images stored as NSData objects, UISwitches bound to boolean valuea and UITextField for alll other values.

Definition at line 1202 of file objsql.mm.

- (cOOValueDictionary) decode: (cOOValueDictionary values

Decode values taken from the database for use in [record setValuesForKeysWithDictionary:values];

Definition at line 1091 of file objsql.mm.

- (cOOValueDictionary) encode: (cOOValueDictionary values

Encode values ready for insertion into the database (convert OOString to NSString etc.)

Definition at line 1074 of file objsql.mm.

+ (OOString) export: (const OOArray<id> &)  array
delimiter: (cOOString delim 

Convert a set of records selected from the database into a string which can be saved to disk.

Definition at line 1172 of file objsql.mm.

+ (OOArray< id >) import: (const OOArray<OODictionary<OOString> > &)  nodes
intoClass: (Class)  recordClass 

import values for a list of nodes selected from an XML document.

Definition at line 1116 of file objsql.mm.

+ (OOArray< id >) import: (cOOString string
intoClass: (Class)  recordClass
delimiter: (cOOString delim 

Convert a string taken from a flat file into record instances which can be inserted into the database.

Definition at line 1139 of file objsql.mm.

- (id) initClass: (Class)  aClass

Definition at line 922 of file objsql.mm.

+ (OOMetaData *) metaDataForClass: (Class)  OO_RETURNS

Definition at line 909 of file objsql.mm.

- (OOStringArray) naturalJoinTo: (cOOStringArray to

Find the columns shared between two classes and that have upper case names (are indexed).

Definition at line 1061 of file objsql.mm.

+ (NSString *) ooTableTitle
implementation

Definition at line 907 of file objsql.mm.

+ (OOArray< id >) selectRecordsRelatedTo: (id)  record
implementation

Reimplemented from OORecord.

Definition at line 918 of file objsql.mm.

+ (void) updateRecord: (id)  record
fromView: (OOView *)  view 

When the delegate method fires this method should be called to update the record with the modified value before updating the database.

Definition at line 1253 of file objsql.mm.

Member Data Documentation

- (OOStringArray) archived

Definition at line 120 of file objsql.h.

- (OOStringArray) blobs

Definition at line 120 of file objsql.h.

- (OOStringArray) boxed

Definition at line 120 of file objsql.h.

- (OOStringArray) columns

Definition at line 120 of file objsql.h.

- (OOString) createTableSQL

Definition at line 123 of file objsql.h.

- (OOStringArray) dates

Definition at line 120 of file objsql.h.

- (OOStringArray) indexes

Definition at line 120 of file objsql.h.

- (OOStringArray) ivars

Definition at line 120 of file objsql.h.

- (OOStringArray) joinableColumns

Definition at line 120 of file objsql.h.

- (OOString) keyColumns

Definition at line 119 of file objsql.h.

- (OOStringArray) outcols

Definition at line 120 of file objsql.h.

- (Class) recordClass

Definition at line 124 of file objsql.h.

- (OOString) recordClassName

Definition at line 119 of file objsql.h.

- (OOString) tableName

Definition at line 119 of file objsql.h.

- (OOStringArray) tablesWithNaturalJoin

Definition at line 120 of file objsql.h.

- (OOString) tableTitle

Definition at line 119 of file objsql.h.

- (OOStringArray) tocopy

Definition at line 120 of file objsql.h.

- (OOStringDictionary) types

Definition at line 122 of file objsql.h.

- (OOStringArray) unbox

Definition at line 120 of file objsql.h.


The documentation for this class was generated from the following files: