as this is my first time implementing an API, I seem to need a bit of guidance.
First things first: Is there any official introduction to the Economic API? I have downloaded the examples from GitHub, and the *.pdf's on how to get started - It's all well and good, I am up and running... for now.
Basically the things that I find the most confusing is the concept of handles and the way they are implemented. I get that a handle is an abstraction of a reference which is managed externally; its opacity allows the referent to be relocated in memory by the system without invalidating the handle. (Yearh, I have wikipedia too...)
But how is, say, a project actually handled in the API?
I can do stuff like ('session' here being my, well, Economic session):
1. ArrayOfProjectHandle aophAll = session.projectGetAll();
2. ProjectHandle tempp = new ProjectHandle();
3. tempp = aophAll.getProjectHandle().get(0);
I imagine line 1 will return all existing projects from Economic. But does that mean a handle is a project? So I should be able to do something like: aophAll.get(0).setName("Project1"); ?
And thus accept "A project is called a handle now", end of story.
And in that case, what is the difference between a handle and a dataset?
1. ProjectData npd = new ProjectData();
2. //Do stuff to dataset
Can I create a new project along the lines of the above codes sequence? (So far it just throws an exeption:
"Economic.Api.Exceptions.SchemaException(E00500): The element 'data' in namespace 'http://e-conomic.com' has invalid child element 'IsClosed'
Is there any sort of overall describtion of these things? Maybe a soft way into the world of APIs (assuming this is solely an API thing).
Maybe someone patient who could take a few minutes a write down a Dummy-guide or generally care to elaborate on the whole "Life and anatomy of the Economic API"?
Anything is appreciated at this point.
Thank you very much for your time.