Today's meeting covered some design issues so sending it out to the list so everyone can see them.
1) Semantic validation - how should it be done? Should the client app do it? Should there be a separate DTD, that specifies the validation methods for various field, that gets passed into the Manifest Parser? The cleanest way to do semantic validation seems to be to have the specific DataObject sub-classes implement semantic validation in the from_xml() method. This way, as the Manifest Parser is populating the manifest data in the DOC by using from_xml() on the respective DataObject sub-classes, the semantic validation will get done. The end result being that once the manifest data has been stored in the DOC, it is valid syntactically as well as semantically. 2) The are some common sections of the AI/DC schema - for example, the configuration schema. Who should provide the implementation for the DataObject sub-class that handles those sections - Manifest Parser, DC or someone else? Since the common sections of the schema are likely to be interpreted differently by AI and DC, it makes sense for the individual clients (DC and AI) to provide the implementation. 3) In the case of an error, who writes to the logger? Is it the checkpoint or the app? The checkpoint would raise the exception. The engine will catch it, store it in the errorsvc and return control back to the app. The app would retrieve the error from the errorsvc and call the logger. 4) Is there a requirement that a checkpoint's get_progress_estimate() must be called before execute()? In general it is true that a checkpoint's get_progress_estimate must be called before execute. However, in the case that a checkpoint is called outside of the engine (for example, a DC checkpoint calling TransferCPIO directly), it may not even call get_progress_estimate. The checkpoint developer needs to account for this case. This brought back the discussion about whether DC should call execute() on a specific checkpoint outside of the engine at all. To be continued at next week's meeting. Pointer to the original discussion - http://opensolaris.org/jive/thread.jspa?threadID=129889&tstart=75 Alok _______________________________________________ caiman-discuss mailing list [email protected] http://mail.opensolaris.org/mailman/listinfo/caiman-discuss

