Namespace: OpenEdge.DataAdmin.Binding
Class
UserContext
Parent classes:
Inherits: OpenEdge.DataAdmin.Binding.DataAdminContext
Implements: OpenEdge.DataAdmin.Binding.IDataAdminContext

/* Copyright (c) 2010-2013,2015 by Progress Software Corporation.
/*
/* All rights reserved. No part of this program or document
/* may be reproduced in any form or by any means without
/* permission in writing from Progress Software Corporation.
Author(s):hdaniels
Created:Aug 2010




Method Summary
Options Name Purpose
LOGICAL CanFind (character)
LOGICAL CanFind (character, character)
CHARACTER ColumnExpression (character, character, character) /* Override to split id in name and domain We do remove @ from id for user with no domain in copyTables but not in ReadJson* so the record may have "<name>@' in buffer or Row.keyvalues before being copied into context, so it is safer to use name annd domain in expression than removing @ from id in this case (we do this in Find also ) (this was added to ensure this works when RowBuffer:NewContext calls GetWhere - GetWhere was fixed to call this) */
CopyNewForTenant (character, table)
CopyNewTableForParent (IRow, handle) /* called with tracking-changes */
CopyTable (IDataAdminModel)
CopyTable (table)
CopyTable (table, character, character)
CopyTableForParent (IRow, IDataAdminModel)
OpenEdge.DataAdmin.IDataAdminCollection CreateCollection (IDataAdminContext)
OpenEdge.DataAdmin.IDataAdminElement CreateEntity (IRequestInfo)
OpenEdge.DataAdmin.Binding.Query.FilteredContext CreateFilteredContext (character) /** create default filteredcontext that also handles parent/keyvalue as filter. */
OpenEdge.DataAdmin.Binding.Query.FilteredContext CreateFilteredContext (IRequestInfo) /** create default filteredcontext with requestinfo */
OpenEdge.DataAdmin.Binding.Query.FilteredContext CreateFilteredContext (IRow, IRequestInfo)
CreateRow (IDataAdminElement) /* method public override character GetServerJoinFields(parentid as char): case parentid: when "tenants" then return "Id,TenantId". end. return super:GetServerJoinFields(parentid). end. */
CreateRow (IUser)
CreateRow (IUser, character)
DataRefreshed (IFetchResponse)
LOGICAL Find (character)
LOGICAL Find (character, character)
CHARACTER FindExpression (character)
CHARACTER GetCreateError (IUser)
OpenEdge.DataAdmin.IDataAdminElement GetEntity (character) /* Override to deal with the fact that id is split into namer and domain on client */
CHARACTER GetJoinFields (character)
CHARACTER GetServerJoinFields (character)
HANDLE InitDataset () /* temporary until all sub classes are using createDataset */
InitRow (character) /** also used for name only - domain is then added later */
ReadRowForParent (IRow, JSONObject)
ReadRowForTenant (character, JSONObject)
SplitId (character, character, character)
ValidateBuffer (handle)

Constructor Summary
Options Name Purpose
UserContext ()
UserContext (IIdentityScope) /* end constructor. */

Property Summary
Options Name Purpose
OpenEdge.DataAdmin.Binding.Factory.IContextFactory ContextFactory
INTEGER Count
CHARACTER KeyFields
HANDLE TableHandle


Method Detail
Top

LOGICAL CanFind (character)

Parameters:
pid CHARACTER
Returns LOGICAL
Top

LOGICAL CanFind (character, character)

Parameters:
pid CHARACTER
pDomain CHARACTER
Returns LOGICAL
Top

CHARACTER ColumnExpression (character, character, character)

/* Override to split id in name and domain
We do remove @ from id for user with no domain in copyTables but not in
ReadJson* so the record may have "<name>@' in buffer or Row.keyvalues
before being copied into context, so it is safer to use name annd domain in expression than removing @ from id in this case
(we do this in Find also )
(this was added to ensure this works when RowBuffer:NewContext calls GetWhere
- GetWhere was fixed to call this)
Parameters:
pcColumn CHARACTER
pcOperator CHARACTER
pcValue CHARACTER
Returns CHARACTER
Top

CopyNewForTenant (character, table)

Parameters:
pcVal CHARACTER
copytable TABLE
Top

CopyNewTableForParent (IRow, handle)

/* called with tracking-changes
Parameters:
pRow OpenEdge.DataAdmin.Binding.IRow
phTbl HANDLE
Top

CopyTable (IDataAdminModel)

Parameters:
cntxt OpenEdge.DataAdmin.Binding.IDataAdminModel
Top

CopyTable (table)

Parameters:
copytable TABLE
Top

CopyTable (table, character, character)

Parameters:
copytable TABLE
pcType CHARACTER
pcValue CHARACTER
Top

CopyTableForParent (IRow, IDataAdminModel)

Parameters:
piRow OpenEdge.DataAdmin.Binding.IRow
cntxt OpenEdge.DataAdmin.Binding.IDataAdminModel
Top

OpenEdge.DataAdmin.IDataAdminCollection CreateCollection (IDataAdminContext)

Parameters:
cntxt OpenEdge.DataAdmin.Binding.IDataAdminContext
Returns OpenEdge.DataAdmin.IDataAdminCollection
Top

OpenEdge.DataAdmin.IDataAdminElement CreateEntity (IRequestInfo)

Parameters:
preq OpenEdge.DataAdmin.IRequestInfo
Returns OpenEdge.DataAdmin.IDataAdminElement
Top

OpenEdge.DataAdmin.Binding.Query.FilteredContext CreateFilteredContext (character)

Purpose: create default filteredcontext that also handles parent/keyvalue as filter.
Parameters:
filter CHARACTER
Returns OpenEdge.DataAdmin.Binding.Query.FilteredContext
Top

OpenEdge.DataAdmin.Binding.Query.FilteredContext CreateFilteredContext (IRequestInfo)

Purpose: create default filteredcontext with requestinfo
Parameters:
pReq OpenEdge.DataAdmin.IRequestInfo
Returns OpenEdge.DataAdmin.Binding.Query.FilteredContext
Top

OpenEdge.DataAdmin.Binding.Query.FilteredContext CreateFilteredContext (IRow, IRequestInfo)

Parameters:
pparent OpenEdge.DataAdmin.Binding.IRow
pReq OpenEdge.DataAdmin.IRequestInfo
Returns OpenEdge.DataAdmin.Binding.Query.FilteredContext
Top

CreateRow (IDataAdminElement)

/*
method public override character GetServerJoinFields(parentid as char):
case parentid:
when "tenants" then
return "Id,TenantId".
end.
return super:GetServerJoinFields(parentid).
end.
Parameters:
entity OpenEdge.DataAdmin.IDataAdminElement
Top

CreateRow (IUser)

Parameters:
userImpl OpenEdge.DataAdmin.IUser
Top

CreateRow (IUser, character)

Parameters:
userImpl OpenEdge.DataAdmin.IUser
pcDomain CHARACTER
Top

DataRefreshed (IFetchResponse)

Parameters:
pResponse OpenEdge.DataAdmin.Message.IFetchResponse
Top

LOGICAL Find (character)

Parameters:
pid CHARACTER
Returns LOGICAL
Top

LOGICAL Find (character, character)

Parameters:
pid CHARACTER
pDomain CHARACTER
Returns LOGICAL
Top

CHARACTER FindExpression (character)

Parameters:
pusrid CHARACTER
Returns CHARACTER
Top

CHARACTER GetCreateError (IUser)

Parameters:
userImpl OpenEdge.DataAdmin.IUser
Returns CHARACTER
Top

OpenEdge.DataAdmin.IDataAdminElement GetEntity (character)

/* Override to deal with the fact that id is split into namer and domain on client
Parameters:
pKey CHARACTER
Returns OpenEdge.DataAdmin.IDataAdminElement
Top

CHARACTER GetJoinFields (character)

Parameters:
parentid CHARACTER
Returns CHARACTER
Top

CHARACTER GetServerJoinFields (character)

Parameters:
parentid CHARACTER
Returns CHARACTER
Top

HANDLE InitDataset ()

/* temporary until all sub classes are using createDataset
Returns HANDLE
Top

InitRow (character)

Purpose: also used for name only - domain is then added later
Parameters:
pId CHARACTER
Top

ReadRowForParent (IRow, JSONObject)

Parameters:
pRow OpenEdge.DataAdmin.Binding.IRow
pjson Progress.Json.ObjectModel.JsonObject
Top

ReadRowForTenant (character, JSONObject)

Parameters:
pcVal CHARACTER
pjson Progress.Json.ObjectModel.JsonObject
Top

SplitId (character, character, character)

Parameters:
id CHARACTER
puser CHARACTER
pdomain CHARACTER
Top

ValidateBuffer (handle)

Parameters:
phUser HANDLE


Constructor Detail
Top

UserContext ()

Top

UserContext (IIdentityScope)

/* end constructor.
Parameters:
pscope OpenEdge.DataAdmin.Binding.Factory.IIdentityScope


Property Detail
Top

OpenEdge.DataAdmin.Binding.Factory.IContextFactory ContextFactory

Returns OpenEdge.DataAdmin.Binding.Factory.IContextFactory
Top

INTEGER Count

Returns INTEGER
Top

CHARACTER KeyFields

Returns CHARACTER
Top

HANDLE TableHandle

Returns HANDLE


Copyright © 2022 Progress Software Corporation. All rights Reserved.

Progress® OpenEdge® Release 11.7.15