xp-framework/rfc — Issue #144: Instrumentation
Author: thekid
Created: 2011-10-17 16:00:16+00:00
State: open
Labels: draft, framework

Scope of Change
====
A new API will be introduced that will enable the creation of AOP tools.

Rationale
====
Add AOP support to the XP framework.

Functionality
====

Definition
----

```
instrumentation: "the use or application of instruments (as for
observation, measurement, or control)

```

Usage
----
The xp runners will be extended to accept a system argument called
"instrumentation":

```
# Without instrumentation
$ xpcli net.xp_forge.demo.enum.Operation

# With instrumentation
$ xpcli -i invoke.aop net.xp_forge.demo.enum.Operation

```

Instrumentations
----
Instrumentations can:
* Intercept class loading

Example instrumentation
----

```php
loadClassBytes($class));
}
}
?>
```

Security considerations
====

Speed impact
====

Dependencies
====
xp-framework/rfc #166 (XP Runners)

Related documents
====