[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [dsdp-mtj-dev] MTJ Build Hooks requirements
|
Hi Craig,
I see your point, although mtj does not use the ISDK interface
anywhere yet, so for now it would not work. How about doing this change
latter when the ISDK interface is used by MTJ ??
Regards,
David Marques
Craig Setera wrote:
Sorry... As usual lately, I'm swamped. I guess I have a concern with
the SDK name being used as the identifier in the general case... in
particular when we get the new SDK extension point up and going. It
seems to me that we likely need to add a getIdentifier() method to the
SDK object and that that name will be the SDK name by default for
"imported" Devices/SDKs.
On Apr 13, 2009, at 2:26 PM, David Marques wrote:
Hello everyone,
I would like to know if someone has any more comments on it since i
am planning to finish the code and commit it tomorrow.
Regards,
David Marques
David Marques wrote:
Hello Graig,
It is based on the device's SDK name returned by the
IDevice.getSDKName method. It seems to be the device's sdk id, isn't
it ??
Regards,
David Marques
Craig Setera wrote:
Is the hook filter really based on "name" or is it based on id's?
On Apr 13, 2009, at 7:36 AM, David Marques wrote:
Hi Jon, follows the answers to your questions.
Hope i could make it clear enough...
Regards,
David Marques
Jon Dearden wrote:
Hi David,
Thank you for your work on this. I have a few questions...
1. How is the SDK filter used?
Does each SDK provider get one call-back in total? One call-back for
each SDK provided? Or, one call-back for each device? How does MTJ
identify the SDK? The reason I ask is that it appears the regular
expression approach is somewhat loser than an approach where MTJ can
identify which specific SDK a device belongs to.
The SDK filter is used in order to define to which SDKs the hook
will be attached. For example, if i define a hook for Motorola.*
all SKDs which name starts with "Motorola" will have the hook
attached to all it's devices during their build process.
2. How does MTJ make use of the priority attribute?
The priority attribute is used to order the hooks' execution. For
example if hook 1 has priority 1 and hook 2 has priority 2 the
hook 1 will be called before hook 2 both in the pre and pos build
callbacks.
3. Does the IMTJProject reference in the pre/postBuild call-backs
supply
access to everything a SDK provider may need?
For our needs, as a start, we require the location of the
device/deployed folders for our devices, the root directory of
our SDK
(so we can get bin, simulator, etc), the names of the JAR and
JAD, the
libraries associated with the SDK, and such. The basic concern
here, of
course is, is IMTJProject the portal that will give an SDK provider
everything they may need?
From IMTJProject the developer has access to both IJavaProject and
IProject instances and all the reosurces that may be needed.
4. What exactly is meant by "build"?
Is this the whole series of actions that takes place when the user
clicks "Create Package"?
The "build" process that i have been talking about, is the project
build (both incremental and full build). During incremental build
only the active configuration is built, although the build hooks
DO act upon this build also, and as you expect, the hooks act on
all configurations during the full build (when the user clicks
"Create Package").
What "sub steps" are included? Does it make any
sense to notify the SDK provider at the beginning and end of each of
this steps?
What do you mean by "sub steps", are you considering for example
each builder attached to a project one step ??
5. Is it possible that we might want to return a value from the
preBuild
call to indicate to MTJ that we would like a step to be skipped?
No, since we do NOT have a "build step" concept implemented on our
build solution.
One example use case is where an SDK provider has some post-build
step
(such as signing) that should only be taken after everything and
does
not want that action taken during the build phase. That may not be a
great example, but perhaps there is a need for an SDK provider to
influence the process in this way?
Well i guess the pre/pos build hooks will be enough on most
situations, although i think the worst case would be if for some
reason some SDK provider has some specific requirements (such as
when signing), it would have to do some extra work after the
default signing action during the build process (such as
implementing a post build hook).
6. How can we meaningfully report back to MTJ that an error has
occurred
on our part during the pre or postBuild call? Should an error
value be returned? An exception thrown? Will these
exceptions be defined in the API? If we can report an error, then
MTJ
can present some meaningful message to the user, rather than a
general
"some error occurred" result.
The hook's callbacks interface throw CoreException which is the
same exception thrown by the builders for errors during build.
Cheers,
Jon Dearden
Research In Motion
-----Original Message-----
From: dsdp-mtj-dev-bounces@xxxxxxxxxxx
[mailto:dsdp-mtj-dev-bounces@xxxxxxxxxxx] On Behalf Of David Marques
Sent: Tuesday, April 07, 2009 2:13 PM
To: Mobile Tools for The Java Platform mailing list
Subject: [dsdp-mtj-dev] MTJ Build Hooks requirements
Hello All,
I have started to define the requirements on the pre/pos build
hooks. The initial version is already on our WIKI
(http://wiki.eclipse.org/DSDP/MTJ/Requirements/MTJ_Build#ID:_build:FR007
_-_MTJ_shall_define_an_extension_point_for_build_hooks). Does
anyone have any comment to add on this ?
Hope the requirements are clear enough.
Regards,
David Marques
_______________________________________________
dsdp-mtj-dev mailing list
dsdp-mtj-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/dsdp-mtj-dev
---------------------------------------------------------------------
This transmission (including any attachments) may contain
confidential information, privileged material (including material
protected by the solicitor-client or other applicable
privileges), or constitute non-public information. Any use of
this information by anyone other than the intended recipient is
prohibited. If you have received this transmission in error,
please immediately reply to the sender and delete this
information from your system. Use, dissemination, distribution,
or reproduction of this transmission by unintended recipients is
not authorized and may be unlawful.
_______________________________________________
dsdp-mtj-dev mailing list
dsdp-mtj-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/dsdp-mtj-dev
_______________________________________________
dsdp-mtj-dev mailing list
dsdp-mtj-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/dsdp-mtj-dev
_______________________________________________
dsdp-mtj-dev mailing list
dsdp-mtj-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/dsdp-mtj-dev
_______________________________________________
dsdp-mtj-dev mailing list
dsdp-mtj-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/dsdp-mtj-dev
_______________________________________________
dsdp-mtj-dev mailing list
dsdp-mtj-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/dsdp-mtj-dev
_______________________________________________
dsdp-mtj-dev mailing list
dsdp-mtj-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/dsdp-mtj-dev