You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Initial Wings-OODT Integration

January 15, 2015

Wings Architecture Diagram

Wings-OODT Integration Overview

OODT Code Modifications

  • File Manager Additions
    • API Additions
      • addParentForProductType - to support parent additions to data types in Wings Data Catalog
      • removeParentForProductType
      • removeProductType
      • addElementsForProductType - to support property additions to data types in Wings Data Catalog
      • removeElementsForProductType
    • XMLStructFactory Modifications
      • getProductTypeMapXmlDocument - fixed bug so it returns types that have no defined elements but have parents from which it can inherit elements
    • Validation Layer Additions
      • addParentForProductType - invocation from API function above
      • removeParentForProductType - invocation from API function above
  • Workflow Manager Additions
    • API Additions
      • addTask - add a task to the repository (not currently used)
      • removeTask
      • executeWorkflow - similar to executeDynamicWorkflow, but takes as input a workflow object
    • WorkflowRepository Additions
      • removeTask - invocation from API function above

Wings Task Project

  • WingsTask – newly defined
    • Subclass of WorkflowTaskInstance
      • run Function
      • Get Input/Output/Script Path/Arguments from Task Configuration Properties
      • Fetch Inputs from File Manager
      • Run the Wings Component Script with appropriate arguments
      • Move Outputs to specified data directory
      • Create a Task log for monitoring purposes
  • WingsWorkflow – newly defined, combines workflow & component adapters
    • Helper class to create and run an OODT Workflow from a Wings execution-ready workflow
    • runDAXWorkflow Function
      • Parse an execution-ready workflow. In this case a DAX (Directed Acyclic graph Xml)
      • Create WingsTasks and add Configuration to specify Script Path/Input/Output/Arguments.
      • Create an OODT Workflow object and add WingsTasks to it
      • Ask Workflow Manager to run the OODT Workflow object

Wings Portal OODT Adapters (PHP)

  • Use PHP/Java Bridge to make Java Client calls from PHP
  • Data Adapter
    • SyncFromDC – bootstrapping File Manager from Wings Data Catalog
      • Sync Data Catalog (DC) with OODT File Manager
      • For Data Types, ask File Manager to addProductType with appropriate Parent Type and ProductType Elements
      • For Data Files, ask File Manager to addProduct and ingestProduct with appropriate References and Product Type
    • Map Wings Data Catalog interface editing functions to File Manager
  • Workflow/Component Adapter
    • Encapsulated within the WingsWorkflow Class in the WingsTask Project
  • Workflow Runner/Monitor
    • runOODTRequest.php
      • Use Wings Core to Plan and create Executable Workflow (DAX)
      • Call WingsWorkflow.runDAXWorkflow
      • Monitor Log Files for tracking workflow progress
  • No labels