Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Revised per decisions in EDFI-394 comments

Prepared by Certica Solutions on 7/31/2020, Reviewed by Ed-Fi 8/14/2020

Epic for Work: 

Jira Legacy
serverEd-Fi Issue Tracker
serverIde04b01cb-fd08-30cd-a7d6-c8f664ef7691
keyEDFI-372

Table of Contents

Table of Contents

...

Deletion Behavior

Agent Deletion

  • No change to Agent deletion behavior – they will continue to be archived (logically deleted).
  • When an agent is archived, it is disassociated from the associated API connection and bootstrap data associations.

Data Map Deletion

  • No change to Map deletion behavior – they are physically deleted, and associated agent references are removed.

...

UI Feature

Modifications

Activity

  • Add API connection name to the activity list.
  • Add API connection selector to allow optional filtering of results.

Data Browser -> Assessments / Schools

  • Add API connection selector antecedent for browsing assessment or school data.

Agents

  • Add API connection name to the agent list.
  • Add API connection selector to the agent form.
  • Add section (similar to Data Maps) to allow addition of Bootstraps to the Agent.

Maps

  • Add API version selector to obtain resource metadata required for mapping.
  • Add API connection selector in modal to preserve descriptor search functionality.

Logs -> Files tab

  • Add API connection name to the file list.
  • Add API connection selector to allow optional filtering of results.

Lookups

  • Add API connection selector in modal to preserve descriptor search functionality.
Bootstrap Datas
  • Add API version selector antecedent for populating available resources.

Configuration

  • Replace global connection setup with link to manage API Connections.

API Connections

  • New screen supporting management of multiple API connections.
  • Live connection verification is required to save the connection. Saving the connection will set up API version and associated resources in database if it does not already exist.
  • Connection name must be unique.

Export

  • Add API version selector antecedent – data maps and bootstraps are filtered down to the version.Require selected data maps have same API version.
  • Limit selection of bootstrap data definitions to those matching the data map(s) API version

Import

  • Use payload version number and import only if this data import installation knows about the version.

Template Sharing

  • Follows same behavior as export and import.
  • Revised ODS API Version optional filter to use values of Technology Suite 2 and Technology Suite 3 instead of 2.x and 3.x (verify compatibility with 5.x).


Data Model Changes

Table

Change

Justification

ApiServers

  • Add Name column with unique constraint.
  • Replace ApiVersion column with ApiVersionId column with FK.

To help differentiate between API connections, each is associated with a name.

Agents

  • Add ApiServerId column. Nullable to support disassociated on archive of agent.

An agent executes against an API connection.

IngestionLogs

  • Add ApiVersionId with FK to ApiVersions.
  • Replace AgentId column with AgentName.
  • Add ApiServerName column.

Denormalize columns to preserve history.

ApiVersions

  • New table, primary key ApiVersionId (identity column), attribute Version.

A master table is established to support ApiVersion as a first-class citizen (e.g. to populate dropdown list of versions in UI) and FK relationships associated with it.

Resources

  • Add ApiVersionId column with FK to ApiVersions.

Supports the persistence of resource metadata per API version.

DataMaps

  • Add ApiVersionId column with FK to ApiVersions.

Maps are version specific.

BootstrapDatas

  • Add ApiVersionId column with FK to ApiVersions.
  • Remove ProcessedDate column.
  • Remove ProcessingOrder column.

Bootstrap datas are version specific.

Migrate connection specific bootstrap information to a new table.

Processing order is now managed by agent instead of globally.

BootstrapDataAgents

  • New junction table.

Associate a bootstrap data item with an agent.

BootstrapDataApiConnectionsBootstrapDataApiServers

  • New junction table.

Migrate ProcessedDate from BootstrapDatas to track if bootstrap data needs to be posted to the API.

...