AgileApps Support Wiki Pre Release

Difference between revisions of "HowTo:Classes, APIs, and Naming Conventions"

From AgileApps Support Wiki
imported>Aeric
(Created page with "{{subst: HowTo Guide}}")
 
imported>Aeric
Line 1: Line 1:
<noinclude>
<noinclude>
{{Orientation | audience | level | N}}
{{Orientation | Developers | Intermediate | 10}}
&lt;/noinclude>...First line here...
</noinclude>...First line here...
:* Activate the noinclude block so it doesn't appear when Guides are aggregated.
===Uses for Java Classes===
:* audience = Users, Designers, Developers
In addition to their use as Page "controllers", Java classes and the methods they contain can be used in many other ways:  
:* level = Beginner, Intermediate, Advanced
:{|
:* N = 1, 2, 5, 10, 15, 20, 30 (minutes)
====Data Policies====
===Heading===
You can use [[Data Policies]] to send email or update a record, among other things. You can also use a Data Policy to execute Java code.
Top level heads in HowTo Guides are H3's, so they can be combined into a big PDF, one day.
:;Pre-processing: A pre-processing policy executes before the trigger event has taken place, allowing you to:
::* '''Validate data''' - Do sophisticated validation of incoming, throwing an exception to prevent invalid data from getting into the system.
::* '''Mask Data''' - Intercept outgoing data before it is delivered, replacing the first several digits of a social security numbers with X's, for example. (Note: When masking data, it is important to execute the data policy on both List-display and record-display events.)


:;Post-Processing:A post-processing policy executes after the event has taken place. For example, after a record has been added to the system, you might use it's contents to update other records in the system.
====Handlers====
:;Custom Email Handlers: With a custom Email Handler, you intercept email messages sent to a special platform address, and process them however you need to.
:: ''Learn more:'' [[HowTo:Handle Incoming Emails Programmatically]]
:;Custom Package Data Handlers: When a [[Package]] is created, it contains the skeleton for the database [[Objects]] that are included in the package. No data is included. In cases where data is needed, you can create a Package Data Handler with two methods defined by interface. One tells the platform which data to include when a package is created. The other tells the platform what to do with the data when the package is installed.
:: ''Learn more:'' [[HowTo:Create a Data Handler to Add Data to a Package]]
|}
===Invoking Java APIs===
Ninety-nine percent of the time, the Java APIs you invoke will be from [{{DOCHOST}}/javadocs/com/platform/api/Functions.html Functions] class.
�:In: com.platform.api.Parameters
::Parameters params = Functions.getParametersInstance(); �
:Out: com.platform.api.Result
::A list of Parameters objects
::Loop to get all, or just grab the first:
:::ParametersIterator it = result.getIterator();
:::Parameters result_params = it.next(); �
Controller: Put Result values into a HashMap for the JSP page
<!--
===Wrap Up===
===Wrap Up===
...What you've done....
...What you've done....
Line 16: Line 40:
:''Learn more:''
:''Learn more:''
::* ...
::* ...
<!--
  No category for a HowTo Guide.
  They're reached from the index page in the Nav Bar.
  No point having an entry in the categories list, as well.
-->
-->

Revision as of 00:51, 4 August 2012

For:   Developers
Level: Intermediate
Time:  10 minutes

See more:
    ◾ HowTo Guides

...First line here...

Uses for Java Classes

In addition to their use as Page "controllers", Java classes and the methods they contain can be used in many other ways:

Data Policies

You can use Data Policies to send email or update a record, among other things. You can also use a Data Policy to execute Java code.

Pre-processing
A pre-processing policy executes before the trigger event has taken place, allowing you to:
  • Validate data - Do sophisticated validation of incoming, throwing an exception to prevent invalid data from getting into the system.
  • Mask Data - Intercept outgoing data before it is delivered, replacing the first several digits of a social security numbers with X's, for example. (Note: When masking data, it is important to execute the data policy on both List-display and record-display events.)
Post-Processing
A post-processing policy executes after the event has taken place. For example, after a record has been added to the system, you might use it's contents to update other records in the system.

Handlers

Custom Email Handlers
With a custom Email Handler, you intercept email messages sent to a special platform address, and process them however you need to.
Learn more: HowTo:Handle Incoming Emails Programmatically
Custom Package Data Handlers
When a Package is created, it contains the skeleton for the database Objects that are included in the package. No data is included. In cases where data is needed, you can create a Package Data Handler with two methods defined by interface. One tells the platform which data to include when a package is created. The other tells the platform what to do with the data when the package is installed.
Learn more: HowTo:Create a Data Handler to Add Data to a Package

Invoking Java APIs

Ninety-nine percent of the time, the Java APIs you invoke will be from Functions class.

�:In: com.platform.api.Parameters

Parameters params = Functions.getParametersInstance(); �
Out: com.platform.api.Result
A list of Parameters objects
Loop to get all, or just grab the first:
ParametersIterator it = result.getIterator();
Parameters result_params = it.next(); �

Controller: Put Result values into a HashMap for the JSP page