Clad TODO: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
No edit summary
No edit summary
Line 5: Line 5:
=TODO=
=TODO=


Tactical TODO
* Define how users can extend their configuration – the user application will most likely need global options of their own.
** An application must declare its global options so we know the literals (short or long).


• Define how users can extend their configuration – the user application will most likely need global options of their own.
* Currently we look for classes based on their name (*Command and *ApplicationRuntime). Use annotations or look inside the class for to see if they implement Command or ApplicationRuntime. ApplicationRuntime callback should be annotated instead of being interface methods. However, keep the framework backward compatible, old API users should keep working.
o An application must declare its global options so we know the literals (short or long).
** In order to find the ApplicationRuntime, we need to set “application.name” system property. This is awkward, we need to get rid of it. Annotations is probably best.


Long Term TODO
* Define a configurable convention for a default command if none is specified, if I feel the need. Currently is hardcoded in the application runtime: ApplicationRuntime.getDefaultCommandName(). It’s probably sufficient.
 
• Currently we look for classes based on their name (*Command and *ApplicationRuntime). Use annotations or look inside the class for to see if they implement Command or ApplicationRuntime. ApplicationRuntime callback should be annotated instead of being interface methods. However, keep the framework backward compatible, old API users should keep working.
o In order to find the ApplicationRuntime, we need to set “application.name” system property. This is awkward, we need to get rid of it. Annotations is probably best.
 
Define a configurable convention for a default command if none is specified, if I feel the need. Currently is hardcoded in the application runtime: ApplicationRuntime.getDefaultCommandName(). It’s probably sufficient.

Revision as of 21:47, 17 November 2016

Internal

TODO

  • Define how users can extend their configuration – the user application will most likely need global options of their own.
    • An application must declare its global options so we know the literals (short or long).
  • Currently we look for classes based on their name (*Command and *ApplicationRuntime). Use annotations or look inside the class for to see if they implement Command or ApplicationRuntime. ApplicationRuntime callback should be annotated instead of being interface methods. However, keep the framework backward compatible, old API users should keep working.
    • In order to find the ApplicationRuntime, we need to set “application.name” system property. This is awkward, we need to get rid of it. Annotations is probably best.
  • Define a configurable convention for a default command if none is specified, if I feel the need. Currently is hardcoded in the application runtime: ApplicationRuntime.getDefaultCommandName(). It’s probably sufficient.