Search Results xnp_pipe




Overview

XNP_PIPE is a PL/SQL package owned by the APPS schema in Oracle E-Business Suite, classified under the ETRM metadata as an "OTHER" API type. Its name, combined with the DBMS_PIPE table reference recorded in the dependency metadata, indicates that the package provides a thin wrapper around Oracle's built-in DBMS_PIPE facility for inter-session communication. In the EBS 12.1.1 and 12.2.2 architectures, XNP_PIPE serves as the messaging transport layer for the XNP (eXtended Network/Notification Processing) subsystem, which underpins outbound notification and integration agent infrastructure. Rather than embedding pipe semantics directly in higher-level application code, XNP_PIPE isolates the low-level read and write operations so that dependent components—most notably XNP_ADAPTER—can exchange messages through named pipes without direct dependency on DBMS_PIPE syntax. The dependency metadata confirms this layering: XNP_PIPE depends on SYS.STANDARD and references DBMS_PIPE, while it is itself referenced by APPS.XNP_ADAPTER and is recursive in its own dependency chain.

Key Procedures and Functions

The documented interface for XNP_PIPE comprises two procedures, both of which correspond directly to the fundamental operations of Oracle's pipe mechanism:

  • READ — Retrieves a message from a named pipe. This procedure corresponds to the DBMS_PIPE.RECEIVE_MESSAGE operation and is the consumer side of the messaging model, allowing a waiting EBS session or agent process to pick up a payload previously placed on the pipe.
  • WRITE — Places a message onto a named pipe. This procedure corresponds to the DBMS_PIPE.SEND_MESSAGE operation and represents the producer side of the messaging model, allowing a calling session to enqueue a payload for consumption by another session or background process.

The ETRM metadata records exactly two documented procedures and does not publish parameter lists. No parameter signatures are asserted here, as none are documented. The naming convention confirms a minimal read/write abstraction over the underlying pipe primitives.

Tables Accessed

The documented metadata lists only DBMS_PIPE as the referenced object, accessed through APPS synonyms. DBMS_PIPE is not a database table in the conventional sense; it is the Oracle-supplied PL/SQL package that implements named-pipe communication within a database instance. XNP_PIPE therefore performs no direct DML against application tables. All message payloads are held in the database's shared pipe memory, managed by DBMS_PIPE rather than persisted in a schema table. The absence of any application table in the dependency list reinforces that XNP_PIPE is a stateless transport utility whose only persistent dependency is the Oracle-supplied pipe package.

Usage Notes

XNP_PIPE is not typically invoked directly by end users or through standard EBS forms. Its primary consumer is XNP_ADAPTER, which the dependency metadata identifies as the sole referrer. In practice, this means the package is called from server-side PL/SQL—commonly within concurrent program logic, workflow background processes, or agent-based notification routines that form part of the XNP integration stack. Customizations or extensions targeting EBS notification and outbound messaging may call XNP_PIPE.READ and XNP_PIPE.WRITE when they need a standardized, APPS-owned entry point to pipe communication instead of calling DBMS_PIPE directly. Because the package is documented as VALID and classified as an OTHER API, it is best regarded as an internal supporting utility: developers should treat its interface as stable but minimal, and should expect future changes to be driven by the needs of XNP_ADAPTER rather than by public API commitments.