The structure of a Service Component
The structure of a Service Component
The structure of a Service Component
A service component is implemented by a class. To
identify it as a service component, it contains an @service
annotation. The SCA runtime will use the file name of the script to
determine the component name, by convention. The class and script
file must therefore share the same name.
PHP SCA components always expose a service, and
there is no way for a component to be invoked other than to be
called as a result of a Web service request, or called directly
from another component or from a script. For this reason a valid
PHP SCA component will always contain an @service annotation and at
least one public method.
Each SCA Component requires that the SCA.php script
is included. As well as containing the definition of the SCA class,
this script contains executable PHP code that will run whenever the
script is called, and which will be responsible for making the
component behave as needed.
It is very important that if your file contains
other includes, they come before the include for SCA.php. If there
are includes after the include for SCA.php, they will not have been
processed when the SCA runtime runs your class.
The example below illustrates this overall
structure
Example #1 The structure of an SCA for PHP
component
<?php
// any includes
include "SCA/SCA.php";
/**
* @service
*/
class ConvertedStockQuote {
// instance variables, business logic, including at least one public method
}
?>