ESE Routines > ESECatalog

# ESECatalog

The ESECatalog class represents an ESE server's catalog and allows the user to examine its contents. Contents include folders and services, represented by ESEFolder and ESEService objects.

## Methods

- ESECatalog::GetChild
- ESECatalog::GetChildren
- ESECatalog::GetParent

## Examples

The following example retrieves the catalog from the server and then gets all of its children, alphabetically sorted:

myCatalog = myServer.GetCatalog()

Children = myCatalog.GetChildren( /SORT )

The list of children will include objects of type ESEFolder and ESEService.

The next example retrieves the catalog from the server and gets a folder within the catalog:

myCatalog = myServer.GetCatalog()

myService = myCatalog.GetChild( 'AsyncService' )

## Properties

### NAME (Get)

The name of the catalog.

### URI (Get)

The full URI to the catalog from the ESE installation.

# ESECatalog::GetChild

The GetChild function returns either an ESEFolder or ESEService object matching the specified name, or !NULL if NAME does not match any of the children. The search is case insensitive.

## Example

Retrieve the catalog from the server and then get all of its children, alphabetically sorted:

Server = ESE.GetServer( 'localhost', 8181 )

Catalog = Server.GetCatalog()

Children = Catalog.GetChildren( /SORT)

The list of children will include objects of type ESEFolder and ESEService.

Retrieve the catalog from the server and get a particular service within the catalog.

Server = ESE.GetServer( 'localhost', 8181 )

Catalog = Server.GetCatalog()

Service = Catalog.GetChild( 'AsyncService' )

## Syntax

Result = Obj.[ESECatalog::]GetChild( Name )

## Return Value

Returns either an ESEFolder or ESEService object matching the specified name, or returns !NULL if NAME does not match any of the children.

## Arguments

### Name

The name of the ESEFolder or ESEService to return.

## Keywords

None.

# ESECatalog::GetChildren

This function returns an IDL list containing objects for all the folders, services, or both, contained directly by the catalog.

## Example

In this example an ESECatalog object is used to retrieve the folders and services that exist directly under the catalog.

Server = ESE.GetServer( 'localhost', 8181 )

Catalog = Server.GetCatalog()

Folders = Catalog.GetChildren( /FOLDERS, /SORT)

Services = Catalog.GetChildren( /SERVICES, /SORT)

The list of folders and services can be further introspected to get deeper-level folder, services and tasks.

## Syntax

Result = Obj.[ESECatalog::]GetChildren( [ /FOLDERS ] [, /SERVICES ] [, /SORT ] )

## Return Value

This method returns an IDL list of ESEFolder and ESEService objects. By default, folders are ordered first. If no children exist, then an empty list is returned. If just the FOLDERS keyword is set, then only folders are returned. Similarly, if just the SERVICES keyword is set, then only services are returned. The SORT keyword returns the list sorted alphabetically. This function throws an error if there is an IDLnetURL error.

## Arguments

None.

## Keywords

### FOLDERS

Set this keyword to return ESEFolder objects. If the SERVICES keyword is not set, then only folders are returned.

### SERVICES

Set this keyword to return ESEService objects. If the FOLDERS keyword is not set, then only services are returned.

### SORT

Set this keyword to alphabetically sort the list of folders and services.

# ESECatalog::GetParent

The GetParent function returns the ESEServer object under which this catalog resides.

## Example

Server = ESE.getServer( 'localhost', 8181 )

Catalog = Server.GetCatalog()

Parent = Catalog.GetParent() ; Parent should be the same as Server

## Syntax

ESEServer = Obj.[ESECatalog::]GetParent()

## Return Value

This method returns the parenting ESEServer object.

## Arguments

None.

## Keywords

None.

## Version History

IDL 8.4.1 | Introduced

## See Also

ESE, ESEFolder, ESEService