Table of Contents

Search

  1. Preface
  2. Introduction to Services Integration Framework
  3. Setting Up the SIF SDK
  4. Request and Response Objects
  5. Transactions and Exception Handling
  6. ORS-Specific SIF API
  7. Asynchronous SIF Requests
  8. ORS-Specific JMS Event Messages
  9. Using Security Access Manager
  10. Using Dynamic Data Masking
  11. SIF API Reference
  12. Troubleshooting
  13. Appendix A: Identifiers
  14. Appendix B: Frequently Asked Questions

Services Integration Framework Guide

Services Integration Framework Guide

GetEntityGraph

GetEntityGraph

The
GetEntityGraph
request fetches a graph of entities and relationships related to a specified set of entities. The entities and relationships returned can be one or multiple hops away from the entities in the request.

Required Parameters

The following table describes the required parameters for the
GetEntityGraph
request.
Parameter
Description
HmConfigurationUid
UID of the HM Configuration.
EntityKeys
List of SiperianObjectRecordKey objects identifying entities for which multiple levels of related relationships and entities will be retrieved.

Optional Parameters

The following table describes the optional parameters for the
GetEntityGraph
request.
Parameter
Description
RecordStates
Specifies the Hub State Indicator value that the returned elements must have.
Note:
Only use RecordStates if State Management is enabled for all entity and relationship base objects.
EffectiveDate
Specifies that date for which the returned elements must be in effect.
Note:
Only use EffectiveDate for timeline-enabled base objects.
EntityGraphFilter
Specifies the limit on the graph depth (number of hops), breadth (number of relationships at each hop), and the total number of relationships.

Response Fields

The following table describes the fields returned by the
GetEntityGraph
response.
Field
Description
Records
A list of relationship and entity record objects.
EntityInfos
Contains additional information about an entity returned by
GetEntityGraph
. Each entity returned in the records has a corresponding EntityInfo.
TotalGraphReturned
If
true
, the entire graph was returned.
If
false
, the entire graph was not returned.
ListNode
If
true
, the maximum breadth limit was reached for the entity.
If
false
, the maximum breadth limit was not reached for the entity.

Use Case

This is the common scenario for using the GetEntityGraph request:
  • Fetch the entities and relationships associated with a specific HM entity or entities
    — If you have Hierarchy Manager and have populated it with data, you can use GetEntityGraph to get the entities and relationships associated with one or more entities.

GetEntityGraph Request Usage Example

The following example shows how to use the GetEntityGraph request:
GetEntityGraphRequest request = new GetEntityGraphRequest(); request.setHmConfigurationUid("HM_CONFIGURATION.Default|Master"); ArrayList keys = new ArrayList(); SiperianObjectRecordKey key = new SiperianObjectRecordKey(); key.setRecordKey(RecordKey.rowid("123")); key.setSiperianObjectUid("HM_ENTITY_TYPE.Company"); keys.add(key); key = new SiperianObjectRecordKey(); key.setRecordKey(RecordKey.rowid("456")); key.setSiperianObjectUid("HM_ENTITY_TYPE.Company"); keys.add(key); request.setEntityKeys(keys); EntityGraphFilter filter = new EntityGraphFilter(); filter.setActiveRelsOnly(true); // Only get current employees // Only get 3 levels of relationships filter.setMaximumDepth(3); // Only traverse Entities that have less than 10 Relationships filter.setMaximumBreadth(10); // Do not return more than 100 total Relationships filter.setMaximumRelationships(100); request.setEntityGraphFilter(filter); GetEntityGraphResponse response = (GetEntityGraphResponse) sipClient.process(request); // Get List of Record objects for Entities and Relationships. List recs = response.getRecords(); // Get EntityInfo object for each Entity returned. List entInfos = response.getEntityInfos();

Related SIF Requests


0 COMMENTS

We’d like to hear from you!