Namespace: OpenEdge.DataAdmin.Binding
Type: Class ServiceAdapter
Parent Classes:
Inherits: Progress.Lang.Object


/* Copyright (c) 2011 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.
Purpose:Handle data requests for a single service/database
Syntax:new ServiceAdapter("sports2000").
Author(s):hdaniels
Created:Fri Aug 06 09:10:06 EDT 2010
Notes:The name of the service is the name of the database.



Method Summary
  Options Name Purpose
  OpenEdge.DataAdmin.Message.IUtilityResponse ExecuteUtility (IUtilityRequest) /* method public handle SaveRow(name as char, bufferHdl as handle, url as char): define variable daservice as DataService. daservice = GetDataService(ConnectionPath,ConnectionName). ServiceName = daservice:ServiceName. return daservice:SaveData(name,bufferHdl,url). /* RequestCompleted:Publish(name).*/ end method. */
  FetchData (IFetchRequest)
  FetchOnServer (character, character, character, character, character, table-handle, dataset-handle) /* this is the .p ... if on a separate session */
  FetchOnServer (character, character, IFetchRequest) /* */
  FetchRow (character, character, character, handle, character, character, logical)
  OpenEdge.DataAdmin.Server.DataService GetDataService (character) /* blank path is supported so we use ? to signal no path */
  OpenEdge.DataAdmin.Server.DataService GetDataService (character, character) /* not needed or belongs on server side if split on appserver (connects to database) */
  RetrieveData (IFetchRequest) /* method private void RetrieveData(msg as IFetchRequest): /* dummy compiler bug workaround */ define variable da as IDataAccess no-undo. this-object:GetDataAccess(msg:EntityName):FetchData(msg). RequestComplete:Publish(msg:SerializeName,msg:ContextId). end method. */
  OpenEdge.DataAdmin.Message.ISaveRequest SaveData (ISaveRequest)

Constructor Summary
  Options Name Purpose
  ServiceAdapter ()
  ServiceAdapter (character)
  ServiceAdapter (character, character)

Event Summary
  Options Name Purpose
  RequestComplete (IFetchResponse)

Property Summary
  Options Name Purpose
  CHARACTER ServiceName


Method Detail
Top

OpenEdge.DataAdmin.Message.IUtilityResponse ExecuteUtility (IUtilityRequest)

/*
method public handle SaveRow(name as char, bufferHdl as handle, url as char):
define variable daservice as DataService.
daservice = GetDataService(ConnectionPath,ConnectionName).
ServiceName = daservice:ServiceName.
return daservice:SaveData(name,bufferHdl,url).
/* RequestCompleted:Publish(name).
end method.
Parameters:
msg OpenEdge.DataAdmin.Message.IUtilityRequest
 
Returns OpenEdge.DataAdmin.Message.IUtilityResponse
 
Top

FetchData (IFetchRequest)

Parameters:
msg OpenEdge.DataAdmin.Message.IFetchRequest
 
Top

FetchOnServer (character, character, character, character, character, table-handle, dataset-handle)

/* this is the .p ... if on a separate session
Parameters:
pcDbName CHARACTER
 
pcPath CHARACTER
 
pcEntityName CHARACTER
 
pcMessageType CHARACTER
 
pcUrl CHARACTER
 
phMessage TABLE-HANDLE
 
phDs DATASET-HANDLE
 
Top

FetchOnServer (character, character, IFetchRequest)

/*
Parameters:
pcDbName CHARACTER
 
pcPath CHARACTER
 
pcMsg OpenEdge.DataAdmin.Message.IFetchRequest
 
Top

FetchRow (character, character, character, handle, character, character, logical)

Parameters:
pEntity CHARACTER
 
pId CHARACTER
 
pUrl CHARACTER
 
pDataset HANDLE
 
pField CHARACTER
 
pValue CHARACTER
 
pLazy LOGICAL
 
Top

OpenEdge.DataAdmin.Server.DataService GetDataService (character)

/* blank path is supported so we use ? to signal no path
Parameters:
pcname CHARACTER
 
Returns OpenEdge.DataAdmin.Server.DataService
 
Top

OpenEdge.DataAdmin.Server.DataService GetDataService (character, character)

/* not needed or belongs on server side if split on appserver
(connects to database)
Parameters:
pcpath CHARACTER
 
pcname CHARACTER
 
Returns OpenEdge.DataAdmin.Server.DataService
 
Top

RetrieveData (IFetchRequest)

/*
method private void RetrieveData(msg as IFetchRequest):
/* dummy compiler bug workaround
define variable da as IDataAccess no-undo.
this-object:GetDataAccess(msg:EntityName):FetchData(msg). GetDataAccess(msg:EntityName):FetchData(msg).
RequestComplete:Publish(msg:SerializeName,msg:ContextId). Publish(msg:SerializeName,msg:ContextId).
end method.
Parameters:
pmsg OpenEdge.DataAdmin.Message.IFetchRequest
 
Top

OpenEdge.DataAdmin.Message.ISaveRequest SaveData (ISaveRequest)

Parameters:
msg OpenEdge.DataAdmin.Message.ISaveRequest
 
Returns OpenEdge.DataAdmin.Message.ISaveRequest
 


Constructor Detail
Top

ServiceAdapter ()

Top

ServiceAdapter (character)

Parameters:
name CHARACTER
 
Top

ServiceAdapter (character, character)

Parameters:
path CHARACTER
 
name CHARACTER
 


Event Detail
Top

RequestComplete (IFetchResponse)

Parameters:
response OpenEdge.DataAdmin.Message.IFetchResponse
 


Property Detail
Top

CHARACTER ServiceName

Returns CHARACTER