Copied types
Organization: TYPE = CHName.Organization;
OrganizationName: TYPE = CHName.OrganizationName;
Domain: TYPE = CHName.Domain;
DomainName: TYPE = CHName.DomainName;
Object: TYPE = CHName.Object;
ObjectName: TYPE = CHName.ObjectName;
Name: TYPE = CHName.Name;
TwoPartName: TYPE = CHName.TwoPartName;
ThreePartName: TYPE = CHName.ThreePartName;
OrganizationNamePattern: TYPE = CHName.Organization;
DomainNamePattern: TYPE = CHName.TwoPartName;
ObjectNamePattern: TYPE = CHName.ThreePartName;
Types Describing Bulk Parameters
StreamKind: TYPE = { nextSegment(0), lastSegment(1) };
StreamOfDomain:
TYPE =
CHOICE StreamKind
OF {
nextSegment => DomainSequence, -- (0)
lastSegment => DomainSequence -- (1)
};
DomainSequence: TYPE = SEQUENCE OF Domain;
StreamOfDomainName:
TYPE =
CHOICE StreamKind
OF {
nextSegment => DomainNameSequence, -- (0)
lastSegment => DomainNameSequence -- (1)
};
DomainNameSequence: TYPE = SEQUENCE OF DomainName;
StreamOfObject:
TYPE =
CHOICE StreamKind
OF {
nextSegment => ObjectSequence, -- (0)
lastSegment => ObjectSequence -- (1)
};
ObjectSequence:
TYPE =
SEQUENCE
OF Object;
StreamOfObjectName:
TYPE =
CHOICE StreamKind
OF {
nextSegment => ObjectNameSequence, -- (0)
lastSegment => ObjectNameSequence -- (1)
};
ObjectNameSequence:
TYPE =
SEQUENCE
OF ObjectName;
StreamOfOrganization:
TYPE =
CHOICE StreamKind
OF {
nextSegment => OrganizationSequence, -- (0)
lastSegment => OrganizationSequence -- (1)
};
OrganizationSequence:
TYPE =
SEQUENCE
OF Organization;
StreamOfThreePartName:
TYPE =
CHOICE StreamKind
OF {
nextSegment => ThreePartNameSequence, -- (0)
lastSegment => ThreePartNameSequence -- (1)
};
ThreePartNameSequence: TYPE = SEQUENCE OF ThreePartName;
Types and Constants Describing Properties
Property: TYPE = LONG CARDINAL;
Properties: TYPE = SEQUENCE 250 OF Property;
all: Property = 0;
nullProperty: Property = 37777777777B;
Item: TYPE = SEQUENCE 500 OF UNSPECIFIED; -- value of an item property
Network Addresses
NetworkNumber: TYPE = ARRAY 2 OF UNSPECIFIED;
HostNumber: TYPE = ARRAY 3 OF UNSPECIFIED;
SocketNumber: TYPE = UNSPECIFIED;
NetworkAddress:
TYPE =
RECORD [
network: NetworkNumber,
host: HostNumber,
socket: SocketNumber
];
NetworkAddressList: TYPE = SEQUENCE 40 OF NetworkAddress;
Remote Errors
WhichArgument:
TYPE = {
first(1), -- concerns the first name or property argument
second(2) -- concerns the second name or property argument
};
ArgumentError: ERROR [problem: ArgumentProblem, which: WhichArgument] = 2;
ArgumentProblem:
TYPE = {
illegalProperty(10), -- property is not usable by a client
illegalOrganizationName(11), -- the organization component of the name is incorrect, e.g., too long or short, or has wild card characters when not allowed
illegalDomainName(12), -- the domain component of the name is incorrect, e.g., too long or short, or has wild card characters when not allowed
illegalObjectName(13), -- the object component of the name is incorrect, e.g., too long or short, or has wild card characters when not allowed
noSuchOrganization(14), -- the name's organization component does not exist
noSuchDomain(15), -- the name's domain component does not exist
noSuchObject(16) -- the name's object component does not exist
};
AuthenticationError: ERROR [problem: Authentication.Problem] = 6;
CallError: ERROR [problem: CallProblem] = 1;
CallProblem:
TYPE = {
accessRightsInsufficient(1), -- operation prevented by access controls
tooBusy(2), -- server is too busy to service this request
serverDown(3), -- a remote Clearinghouse server was down and was needed for this request
useCourier(4), -- server insists that Courier be used for this particular request
other(5)
};
PropertyError: ERROR [problem: PropertyProblem, distinguishedObject: ObjectName] = 3;
PropertyProblem:
TYPE = {
missing(20), -- the object exists, but the property doesn't
wrongType(21) -- client wanted a Group but it was an Item, or vice versa
};
UpdateError: ERROR [problem: UpdateProblem, found: BOOLEAN, which: WhichArgument, distinguishedObject: ObjectName] = 4;
UpdateProblem:
TYPE = {
noChange(30), -- operation wouldn't change the database
outOfDate(31), -- more recent information was in database
objectOverflow(32), -- the particular object will have too much data associated with it
databaseOverflow(33) -- the server has run out of room
};
WrongServer: ERROR [hint: ObjectName] = 5;