Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support data lineage bump version #90

Merged
merged 3 commits into from
Feb 24, 2022
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
Moved to v0.2 of schema
bryanrcarlson committed Feb 23, 2022
commit 0c5421f544ddeb652a5e96030d4f8b703e5605fb
2 changes: 1 addition & 1 deletion Caf.Midden.Cli/Actions/Collate.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
using Caf.Midden.Cli.Common;
using Caf.Midden.Cli.Models;
using Caf.Midden.Cli.Services;
using Caf.Midden.Core.Models.v0_1;
using Caf.Midden.Core.Models.v0_2;
using System;
using System.Collections.Generic;
using System.CommandLine;
2 changes: 1 addition & 1 deletion Caf.Midden.Cli/Common/ICrawl.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
using Caf.Midden.Core.Models.v0_1;
using Caf.Midden.Core.Models.v0_2;
using System;
using System.Collections.Generic;
using System.Linq;
2 changes: 1 addition & 1 deletion Caf.Midden.Cli/Services/AzureDataLakeCrawler.cs
Original file line number Diff line number Diff line change
@@ -5,7 +5,7 @@
using Azure.Storage.Files.DataLake.Models;
using Caf.Midden.Cli.Common;
using Caf.Midden.Cli.Models;
using Caf.Midden.Core.Models.v0_1;
using Caf.Midden.Core.Models.v0_2;
using Caf.Midden.Core.Services.Metadata;
using System;
using System.Collections.Generic;
2 changes: 1 addition & 1 deletion Caf.Midden.Cli/Services/AzureFileShareCrawler.cs
Original file line number Diff line number Diff line change
@@ -2,7 +2,7 @@
using Azure.Storage.Files.Shares;
using Azure.Storage.Files.Shares.Models;
using Caf.Midden.Cli.Common;
using Caf.Midden.Core.Models.v0_1;
using Caf.Midden.Core.Models.v0_2;
using Caf.Midden.Core.Services.Metadata;
using System;
using System.Collections.Generic;
Original file line number Diff line number Diff line change
@@ -5,7 +5,7 @@
using Azure.Storage.Files.DataLake.Models;
using Caf.Midden.Cli.Common;
using Caf.Midden.Cli.Models;
using Caf.Midden.Core.Models.v0_1;
using Caf.Midden.Core.Models.v0_2;
using Caf.Midden.Core.Services.Metadata;
using Google.Apis.Auth.OAuth2;
using Google.Apis.Drive.v3;
2 changes: 1 addition & 1 deletion Caf.Midden.Cli/Services/LocalFileSystemCrawler.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
using Caf.Midden.Cli.Common;
using Caf.Midden.Core.Models.v0_1;
using Caf.Midden.Core.Models.v0_2;
using Caf.Midden.Core.Services.Metadata;
using System;
using System.Collections.Generic;
28 changes: 14 additions & 14 deletions Caf.Midden.Core.Tests/MetadataConverterTest.cs
Original file line number Diff line number Diff line change
@@ -21,7 +21,7 @@ public void Convert_v0_1_0alpha3Nulls_ConvertsProperly()

var actual = sut.Convert(input);

Assert.IsType<Models.v0_1.Metadata>(actual);
Assert.IsType<Models.v0_2.Metadata>(actual);
}

public void Convert_v0_1_0alpha3WithVals_ConvertsProperly()
@@ -89,7 +89,7 @@ public void Convert_v0_1_0alpha3WithVals_ConvertsProperly()

var sut = new MetadataConverter();

Models.v0_1.Metadata actual = sut.Convert(input);
Models.v0_2.Metadata actual = sut.Convert(input);

Assert.Equal(creationDate, actual.CreationDate.ToString());
Assert.Equal(contactName, actual.Dataset.Contacts[0].Name);
@@ -100,17 +100,17 @@ public void Convert_v0_1_0alpha3WithVals_ConvertsProperly()
Assert.Equal(tempExtent, actual.Dataset.Variables[1].TemporalExtent);
}

[Fact]
public void Convert_v0_1_0alpha4_ConvertsProperly()
{
Models.v0_1.Metadata input =
new Models.v0_1.Metadata();

var sut = new MetadataConverter();

var actual = sut.Convert(input);

Assert.IsType<Models.v0_1.Metadata>(actual);
}
// [Fact]
// public void Convert_v0_1_0alpha4_ConvertsProperly()
// {
// Models.v0_1_0alpha4.Metadata input =
// new Models.v0_1_0alpha4.Metadata();
//
// var sut = new MetadataConverter();
//
// var actual = sut.Convert(input);
//
// Assert.IsType<Models.v0_2.Metadata>(actual);
// }
}
}
2 changes: 1 addition & 1 deletion Caf.Midden.Core.Tests/MetadataParserTest.cs
Original file line number Diff line number Diff line change
@@ -21,7 +21,7 @@ private void Parse_v0_1_0alpha1String_ExpectedBehavior()

var actual = sut.Parse(json);

Assert.IsType<Models.v0_1.Metadata>(actual);
Assert.IsType<Models.v0_2.Metadata>(actual);
}
}
}
3 changes: 0 additions & 3 deletions Caf.Midden.Core/Models/v0_1/Catalog.cs
Original file line number Diff line number Diff line change
@@ -15,9 +15,6 @@ public class Catalog
[JsonPropertyName("creationDate")]
public DateTime CreationDate { get; set; }

[JsonPropertyName("projects")]
public List<Project> Projects { get; set; } = new List<Project>();

[JsonPropertyName("metadatas")]
public List<Metadata> Metadatas { get; set; } = new List<Metadata>();

29 changes: 29 additions & 0 deletions Caf.Midden.Core/Models/v0_2/Catalog.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.Json.Serialization;
using System.Threading.Tasks;

namespace Caf.Midden.Core.Models.v0_2
{
public class Catalog
{
[JsonPropertyName("schemaVersion")]
public string SchemaVersion { get; private set; }

[JsonPropertyName("creationDate")]
public DateTime CreationDate { get; set; }

[JsonPropertyName("projects")]
public List<Project> Projects { get; set; } = new List<Project>();

[JsonPropertyName("metadatas")]
public List<Metadata> Metadatas { get; set; } = new List<Metadata>();

public Catalog()
{
this.SchemaVersion = "v0.2";
}
}
}
48 changes: 48 additions & 0 deletions Caf.Midden.Core/Models/v0_2/Configuration.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.Json.Serialization;
using System.Threading.Tasks;

namespace Caf.Midden.Core.Models.v0_2
{
public class Configuration
{
[JsonPropertyName("schemaVersion")]
public string SchemaVersion { get; set; }

[JsonPropertyName("isConfigured")]
public bool IsConfigured { get; set; } = false;

[JsonPropertyName("organizationName")]
public string OrganizationName { get; set; }

[JsonPropertyName("toolName")]
public string ToolName { get; set; }

[JsonPropertyName("catalogPath")]
public string CatalogPath { get; set; }

[JsonPropertyName("zones")]
public List<string> Zones { get; set; } = new List<string>();

[JsonPropertyName("roles")]
public List<string> Roles { get; set; } = new List<string>();

[JsonPropertyName("processingLevels")]
public List<string> ProcessingLevels { get; set; } = new List<string>();

[JsonPropertyName("geometries")]
public List<Geometry> Geometries { get; set; } = new List<Geometry>();

[JsonPropertyName("tags")]
public List<string> Tags { get; set; } = new List<string>();

[JsonPropertyName("datasetStructures")]
public List<string> DatasetStructures { get; set; } = new List<string>();

[JsonPropertyName("qualityControlTags")]
public List<string> QCTags { get; set; } = new List<string>();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Caf.Midden.Core.Models.v0_2.DataDictionary
{
public class DataDictionaryRecordCafCsv
{
public string FieldName { get; set; }
public string Units { get; set; }
public string Description { get; set; }
public string DataType { get; set; }
}
}
81 changes: 81 additions & 0 deletions Caf.Midden.Core/Models/v0_2/Dataset.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Text.Json.Serialization;
using System.Threading.Tasks;

namespace Caf.Midden.Core.Models.v0_2
{
public class Dataset
{
[JsonPropertyName("zone")]
[Required]
public string Zone { get; set; }

[JsonPropertyName("project")]
[Required]
public string Project { get; set; }

[JsonPropertyName("name")]
[Required]
public string Name { get; set; }

[JsonPropertyName("description")]
[Required]
public string? Description { get; set; }

[JsonPropertyName("datasetPath")]
public string? DatasetPath { get; set; }

[JsonPropertyName("format")]
public string? Format { get; set; }

[JsonPropertyName("filePathTemplate")]
public string? FilePathTemplate { get; set; }

[JsonPropertyName("filePathDescriptor")]
public string? FilePathDescriptor { get; set; }

[JsonPropertyName("structure")]
public string? Structure { get; set; }

[JsonPropertyName("lastUpdate")]
public DateTime? LastUpdate { get; set; }

[JsonPropertyName("tags")]
public List<string> Tags { get; set; } = new List<string>();

[JsonPropertyName("contacts")]
public List<Person> Contacts { get; set; } = new List<Person>();

/// <summary>
/// "geometry" value of a geojson document; should include "type" and "coordinates"
/// </summary>
[JsonPropertyName("geometry")]
public string? Geometry { get; set; }

[JsonPropertyName("methods")]
public List<string> Methods { get; set; } = new List<string>();

[JsonPropertyName("temporalResolution")]
public string? TemporalResolution { get; set; }

/// <summary>
/// String in form of {startDate}/{endDate}, e.g. 2011-01-01/2019-10-30
/// Note that dates/times are in ISO 8601 standard
/// </summary>
[JsonPropertyName("temporalExtent")]
public string? TemporalExtent { get; set; }

[JsonPropertyName("spatialRepeats")]
public int? SpatialRepeats { get; set; }

[JsonPropertyName("variables")]
public List<Variable> Variables { get; set; } = new List<Variable>();

[JsonPropertyName("derivedWorks")]
public List<string>? DerivedWorks { get; set; } = new List<string>();
}
}
18 changes: 18 additions & 0 deletions Caf.Midden.Core/Models/v0_2/Geometry.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.Json.Serialization;
using System.Threading.Tasks;

namespace Caf.Midden.Core.Models.v0_2
{
public class Geometry
{
[JsonPropertyName("name")]
public string Name { get; set; }

[JsonPropertyName("geojson")]
public string GeoJson { get; set; }
}
}
30 changes: 30 additions & 0 deletions Caf.Midden.Core/Models/v0_2/Metadata.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
using System;
using System.ComponentModel.DataAnnotations;
using System.Text.Json.Serialization;

namespace Caf.Midden.Core.Models.v0_2
{
public class Metadata
{
[JsonPropertyName("schemaVersion")]
[Required]
public string SchemaVersion { get; private set; }

[JsonPropertyName("creationDate")]
[Required]
public DateTime CreationDate { get; set; }

[JsonPropertyName("modifiedDate")]
[Required]
public DateTime ModifiedDate { get; set; }

[JsonPropertyName("dataset")]
[Required]
public Dataset Dataset { get; set; } = new Dataset();

public Metadata()
{
this.SchemaVersion = "v0.2";
}
}
}
21 changes: 21 additions & 0 deletions Caf.Midden.Core/Models/v0_2/Person.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.Json.Serialization;
using System.Threading.Tasks;

namespace Caf.Midden.Core.Models.v0_2
{
public class Person
{
[JsonPropertyName("name")]
public string? Name { get; set; }

[JsonPropertyName("email")]
public string? Email { get; set; }

[JsonPropertyName("role")]
public string? Role { get; set; }
}
}
Original file line number Diff line number Diff line change
@@ -6,7 +6,7 @@
using System.Text.Json.Serialization;
using System.Threading.Tasks;

namespace Caf.Midden.Core.Models.v0_1
namespace Caf.Midden.Core.Models.v0_2
{
public class Project
{
Loading