Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

CPS-2258

The following feature structure emerged during the actual refactoring

  • cmsubscriptions (TBC)
  •  data
    • async
  • datajobs
  • inventory
    • sync
      • lcm
    • trustlevel

IssueNotes Decision
1use api and impl folders

Team agreed on separate top level ap and impl folders. Common impl folders can be at top level ie. not under impl.
any class in api should not depend (i.e. nor import) anything from impl or common folders!!!  

2use feature based packages

Team agreed to use the current 4 services (or 5 depending on inventory)  as feature folders directly under impl and some also under api

  • datajobs
    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-2240
  • inventory (incl cm handle queries, trustlevel)
    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-2255
  • proxydataservice (passtrough data services)
    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-2256
  • cacheddataservice
    Jira Legacy
    serverSystem Jira
    columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
    columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    keyCPS-2257
  • sync/models sync/data
    Jira Legacy
    serverSystem Jira
    serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
    key
    3when to use common packages

    when in doubt use common package ie e.g. exceptions might be re-used for other features in the future
    However just because it is used by another feature doesn't mean it is common. e.g. a Class to check th state of a cm-handle could be used anywhere but still very much belong to the 'inventory' feature

    4scope

    currently only ncmp-service in scope. 

    5plan

    team agreed to do trial with 'datajobs' first. Code need to be reviewed by both teams. Once this is completed we will asdress address 'legacy' services

    Proposed Generic Structure

    ...

    Code Block
    titledatajobs
    api\datajobs\DataJobsService.class
    api\datajobs\models\DataJobMetadata.class
    api\datajobs\models\DataJobReadRequest.class
    api\datajobs\models\DataJobWriteRequest.class
    
    impl\datajobs\DataJobsServiceImpl.class
    
    exceptions\NoAlternateIdParentFoundException.class
    utils\AlternateIdMatcher.class

    Proposed User Stories

    • Jira Legacy
      serverSystem Jira
      serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
      keyCPS-2240
    • Jira Legacy
      serverSystem Jira
      serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
      keyCPS-2255
    • Jira Legacy
      serverSystem Jira
      columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
      columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
      serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
      keyCPS-2256
    • Jira Legacy
      serverSystem Jira
      columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
      columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
      serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
      keyCPS-2257
    • Jira Legacy
      serverSystem Jira
      serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
      keyCPS-2258
    • Jira Legacy
      serverSystem Jira
      serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
      keyCPS-2298