Using Caché Objects
Static Version
Contents
Contents
Chapter 1:
Introduction to Caché Objects
1.1 Caché Objects Architecture
1.2 Class Definitions and the Class Dictionary
1.2.1 Creating Class Definitions
1.2.2 The Class Dictionary
1.3 The Caché Class Library
1.4 Development Tools
1.4.1 Caché Studio
1.4.2 Caché RoseLink
1.4.3 SQL-based Development
1.4.4 XML-based Development
1.5 Client Interoperability
1.5.1 Java
1.5.2 ActiveX and the ActiveX Gateway
1.5.3 Caché Server Pages
1.5.4 C++
1.5.5 XML
1.5.6 The Caché SQL Gateway
Chapter 2:
Object-Oriented Database Development
2.1 Classes and Objects
2.2 Abstraction and Modeling
2.3 Inheritance and Polymorphism
2.4 Encapsulation
2.5 Extensibility
2.6 Object Persistence
2.7 Object Binding
Chapter 3:
The Caché Object Model
3.1 Referring to an Object — OREF, OID, and ID
3.1.1 OID and ID Values
3.1.2 OREFs and Reference Counting
3.2 Types of Classes
3.2.1 Transient Object Classes
3.2.2 Persistent Object Classes
3.2.3 Serial Object Classes
3.2.4 Data Type Classes
3.3 Inheritance
3.3.1 Multiple Inheritance
3.4 Class Compilation
Chapter 4:
Caché Classes
4.1 Naming Conventions
4.1.1 General Identifier Rules
4.1.2 Class Names
4.1.3 Class Member Names
4.2 Class Keywords
4.3 Class Parameters
Chapter 5:
Packages
5.1 Overview of Packages
5.2 Package Names
5.3 Defining Packages
5.4 Using Packages
5.4.1 The IMPORT Directive
5.5 Package Mapping
5.6 Packages and SQL
5.7 Built-in Packages
Chapter 6:
Methods
6.1 Method Arguments
6.1.1 Specifying Default Values
6.1.2 Calling by Reference
6.1.3 Variable Numbers of Arguments
6.2 Method Return Values
6.3 Method Visibility
6.4 Method Inheritance
6.5 Method Language
6.6 Method Keywords
6.7 Instance and Class Methods
6.8 Kinds of Methods
6.8.1 Code Methods
6.8.2 Expression Methods
6.8.3 Call Methods
6.8.4 Method Generators
Chapter 7:
Properties
7.1 Property Keywords
7.2 Property Visibility
7.3 Property Behavior
7.4 Property Accessors
7.5 Attribute Properties
7.5.1 Data Type Properties
7.5.2 Object-Valued Properties
7.5.3 Collection Properties
7.5.4 Stream Properties
7.5.5 Multidimensional Properties
Chapter 8:
Class Queries
8.1 Query Basics
8.1.1 The Structure of a Class Query
8.1.2 Query Keywords
8.1.3 Creating a Class Query Specification
8.2 User-written Class Queries
8.2.1 The querynameExecute Method
8.2.2 The querynameFetch Method
8.2.3 The querynameClose Method
Chapter 9:
Indices
9.1 Index Keywords
9.2 Index Collation
Chapter 10:
Using Objects with Caché ObjectScript
10.1 Executing Methods
10.1.1 About Return Values
10.1.2 Executing Instance Methods
10.1.3 Executing Class Methods
10.1.4 Error Conditions
10.2 Creating New Objects
10.3 Opening Objects
10.4 Modifying Objects
10.4.1 Modifying Reference Properties
10.4.2 Modifying Embedded Object Properties
10.4.3 Modifying List Properties
10.4.4 Modifying Array Properties
10.4.5 Modifying Stream Properties
10.5 Saving Objects
10.6 Deleting Objects
10.6.1 Deleting a Single Object
10.6.2 Deleting All Objects in an Extent
10.7 Executing Queries
10.7.1 Query Metadata Methods
10.7.2 Preparing Queries for Execution
10.7.3 Executing Queries
10.7.4 Processing Query Results
10.7.5 Closing Queries
10.7.6 Example of Using a Class Query
Chapter 11:
Data Types
11.1 Available Types
11.2 Operation
11.2.1 Using Data Types in Classes
11.2.2 Parameters
11.2.3 Keywords
11.2.4 Data Formats and Translation Methods
11.3 Enumerated Properties
Chapter 12:
Object Persistence
12.1 The %Persistent Class
12.2 The Persistence Interface
12.2.1 Saving Objects
12.2.2 Opening Objects
12.2.3 Deleting Objects
12.2.4 Testing if Objects Exist
12.3 Object Extents
12.3.1 The Extent Query
12.4 Storage Definitions and Storage Classes
12.4.1 The %CacheStorage Storage Class
12.4.2 The %CacheSQLStorage Storage Class
12.5 Schema Evolution
12.5.1 Resetting the Storage Definition
Chapter 13:
Objects and SQL
13.1 The Object-SQL Projection for Classes Themselves
13.1.1 Inheritance and SQL
13.2 The Object-SQL Projection for Class Members
13.2.1 Identity (OIDs Projected to SQL)
13.2.2 Properties
13.2.3 Methods
13.2.4 SQL Triggers
13.2.5 Relationships
13.3 Using Row-level Security
13.3.1 Setting Up Row-level Security
13.3.2 Adding Row-level Security to a Table with Existing Data
13.3.3 Performance Tips and Information
13.3.4 Security Tips and Information
Chapter 14:
Relationships
14.1 Relationship Basics
14.1.1 Relationship Keywords
14.1.2 Defining a Relationship
14.2 Dependent Relationships
14.3 In-Memory Behavior of Relationships
14.4 Persistent Behavior of Relationships
14.4.1 Referential Integrity
14.4.2 Persistent Behavior of Dependent Relationships
Chapter 15:
Streams
15.1 Declaring Stream Properties
15.1.1 Projecting Streams to ODBC
15.2 Using the Stream Interface
15.2.1 Reading and Writing Stream Data
15.2.2 Copying Data between Streams
15.2.3 Inserting Stream Data
15.2.4 Using Streams in Object Applications
15.3 Using Streams with SQL
15.3.1 Reading a Stream via Embedded SQL
15.3.2 Writing a Stream via Embedded SQL
15.4 Streams and Visual Basic
Chapter 16:
Class Projections
16.1 Projection Definitions
16.1.1 Adding a Projection to a Class
16.2 Projection Classes
16.2.1 The Projection Interface
16.2.2 The Standard Projection Classes
16.2.3 Creating a New Projection Class
Chapter 17:
Object Synchronization
17.1 About Updates
17.1.1 The GUID
17.1.2 How Updates Work
17.1.3 The SyncSet and SyncTime Objects
17.2 Running an Update
17.2.1 Preparing for the Update
17.2.2 The Update Itself
17.3 Other Topics
17.3.1 Translating Between GUIDs and OIDs
17.3.2 Manually Updating a SyncTime Table
Chapter 18:
Method Generators
18.1 Defining a Method Generator
18.2 How Method Generators Work
18.3 Method Generator Context
18.4 Implementing Method Generators
18.4.1 Method Generators for Other Languages
18.4.2 Specifying CodeMode within a Method Generator
Chapter 19:
The Caché Data Population Utility
19.1 Data Population Basics
19.1.1 Changes to the Class Definition
19.1.2 Populating Objects
19.2 The POPSPEC Parameter
19.2.1 Populating Embedded Objects
19.2.2 Populating Atomic Properties
19.2.3 Populating Collections
19.2.4 Custom Populate Actions
19.3 Details
Chapter 20:
Using Callback Methods
20.1 %OnAddToSaveSet
20.2 %OnAfterSave
20.3 %OnBeforeSave
20.4 %OnClose
20.5 %OnConstructClone
20.6 %OnDelete
20.7 %OnDetermineClass
20.8 %OnNew
20.9 %OnOpen
20.10 %OnRollBack
20.11 %OnValidateObject
20.12 OnPopulate
Chapter 21:
Object-Specific ObjectScript Features
21.1 .. Syntax
21.2 ##Class Syntax
21.2.1 Invoking a Class Method
21.2.2 Casting a Method
21.3 ##this Syntax
21.4 ##super Syntax
21.5 i%<PropertyName> Syntax
21.6 ..#<Parameter> Syntax
Chapter 22:
Dynamic Dispatch
22.1 How Dynamic Dispatch Happens
22.2 Content of Methods Implementing Dynamic Dispatch
22.2.1 Return Values
22.3 The Dynamic Dispatch Methods
22.3.1 %DispatchMethod
22.3.2 %DispatchClassMethod
22.3.3 %DispatchGetProperty
22.3.4 %DispatchSetProperty
22.3.5 %DispatchSetMultidimProperty
22.3.6 %DispatchGetModified
22.3.7 %DispatchSetModified
Chapter 23:
Class Definition Classes
23.1 Browsing Class Definitions
23.2 Altering Class Definitions
Chapter 24:
Internet Classes
24.1 Email
24.1.1 Mail Messages
24.1.2 Sending Email
24.1.3 Receiving Email
24.2 FTP
24.3 HTTP
24.4 URL Parsing
Appendix A:
Object Concurrency
A.1 Object Concurrency Options
A.2 Version Checking
Copyright
© 1997-2008, InterSystems Corp.
Build:
Caché v2007.1.3 (607)
Last updated:
2007-10-16 23:19:23
Source:
GOBJ.xml