One of the fantastic features of the ARS 7.5 API is that it is 100% pure
Java which means that you do not need to have/leverage any native
libraries.  Unfortunately, it is only backwards compatible to version 7.01
of the ARS API.

One of the biggest changes is a name change away from the com.remedy*
package names to com.bmc* package names.  In addition, as the Java API has
evolved they have started to leverage more traditional Java paradigms -
using the collections library, replacing string-like wrapper objects with
actual Strings.

If you are going to have to write code using the ARS 5.1 API with plans to
eventually migrate to the 7.5 API, then it may be advantageous to introduce
an intermediate layer where you abstracting your custom code from the actual
code that interacts with the AR System platform (e.g., leverage a Data
Access Object design pattern).

For example, if you want to write an integration that interacts with the
"HPD_Helpdesk" form, you could write two classes:

   - HPDHelpdeskIncident
   - HPDHelpdeskDAO

The HPDHelpdeskIncident class would be 100% Java and contain no references
to elements of the AR System API.  All interaction with the AR System
platform would be facilitated via the  HPDHelpdeskDAO object which would
leverage the AR System API.

public class HPDHelpdeskDAO {
private static HPDHelpdeskDAO hpdDAO=new HPDHelpdeskDAO();

/**
 * Manages the process of saving an incident in the HPD:Helpdesk form.
 */
public abstract boolean saveIncident(HPDHelpdeskIncident incident);

/**
 * Manages the process of removing a given incident from the HPD:Helpdesk
form.
 */
public abstract boolean deleteIncident(HPDHelpdeskIncident incident);

/**
 * Retrieves a given HPD:Helpdesk record by case ID
 */
public abstract HPDHelpdeskIncident findByCaseID(String caseID);

/**
 * Retrieves a list HPD:Helpdesk records using the specified criteria.
 */
public abstract List<HPDHepldeskIncident> findBySearchCriteria(String
searchCriteria);

/**
 * Provide a mechanism to obtain a reference to the HPDHelpdeskDAO.
 */
public static HPDHelpdeskDAO getInstance() {
return hpdDAO;
}
}

By doing something like this, whenever you migrate from the 5.1 API to the
7.5 API, all you have to do is make changes to the HPDHelpdeskDAO class.  If
you are going to be writing an interface to several different forms, then I
would write a BaseARSDAO class which handles all interaction with the AR
System server.  The HPDHelpdeskDAO class would extend BaseARSDAO and be
responsible for *translating* information from the HPDHelpdeskIncident
object into a more generic structure of field/value pairs which is
ultimately all you're going to be doing when you get to the AR System layer.

As a general rule, this is how I build out all of my AR System API code.  I
think I have some sample code I can provide.

Derek


Derek Berube <[email protected]>
President/CEO
Wildstar Technologies, LLC.
1453 Riverview Run Lane
Suwanee, Georgia 30024-3890
(404) 444-5283 - Mobile

http://www.wildstartech.com/
AIM Handle: BerubeDB
Google Talk: [email protected]
MSN Messenger: [email protected]
Yahoo! Messenger: derekberube


On Thu, Sep 10, 2009 at 5:14 AM, Sreenivas <[email protected]> wrote:

> ** Hello All,
>
> Please describe the list of frequent changes done by BMC on Remedy Java
> API. We come to know that BMC is changing the couple of Java
> Classes(objects) very frequently. As we are planning to start using Java API
> in ARS 5.1 version. We are also planning to migrate to 7.5. To avoid major
> changes after upgrading to 7.5, please give us more details. What are the
> precautions we have to take while using this API.
>
>
> Thanks,
> Sreeni
> _Platinum Sponsor: [email protected] ARSlist: "Where the Answers
> Are"_

_______________________________________________________________________________
UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
Platinum Sponsor:[email protected] ARSlist: "Where the Answers Are"

Reply via email to