Skip to content

Commit

Permalink
Merge pull request #194 from AnalyticalGraphicsInc/netstandard
Browse files Browse the repository at this point in the history
Retarget to .NET Standard 2.0
  • Loading branch information
shunter authored Jun 22, 2023
2 parents d0fb658 + 2bbc7e4 commit 93c99bb
Show file tree
Hide file tree
Showing 65 changed files with 944 additions and 958 deletions.
11 changes: 5 additions & 6 deletions .appveyor.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
image: Visual Studio 2019
image: Visual Studio 2022
configuration: Release
platform: Any CPU
environment:
Expand All @@ -12,7 +12,7 @@ cache:
- '%LocalAppData%\NuGet\v3-cache'
- '%UserProfile%\.gradle\wrapper -> Java\gradle\wrapper\gradle-wrapper.properties'
install:
- choco install gitversion.portable -pre -y
- choco install -y --no-progress gitversion.portable
before_build:
- cmd: nuget restore DotNet\CesiumLanguageWriter.sln
- ps: gitversion /l console /output buildserver /updateprojectfiles DotNet
Expand All @@ -22,13 +22,12 @@ build:
verbosity: minimal
after_build:
- ps: |
gci DotNet\CesiumLanguageWriter\bin\$env:configuration\*.nupkg | % { Push-AppveyorArtifact $_.FullName -FileName $_.Name }
gci DotNet\CesiumLanguageWriter\bin\$env:Configuration\*.nupkg | % { Push-AppveyorArtifact $_.FullName -FileName $_.Name }
(gc Java\gradle.properties) | % { $_ -replace "^version = .*$", "version = $env:GitVersion_NuGetVersion" } | sc Java\gradle.properties
.\Java\gradlew.bat -p Java assemble
gci Java\CesiumLanguageWriter\build\libs\*.jar | % { Push-AppveyorArtifact $_.FullName -FileName $_.Name }
test:
assemblies:
- DotNet\CesiumLanguageWriterTests\bin\$(configuration)\CesiumLanguageWriterTests.dll
test_script:
- cmd: nunit3-console DotNet\CesiumLanguageWriterTests\bin\%Configuration%\CesiumLanguageWriterTests.dll --result=nunit-results.xml;format=AppVeyor
after_test:
- ps: |
7z a ValidationDotNet.zip (gci DotNet -Recurse -Include ValidationDocument.czml,ValidationDocument*.js).FullName
Expand Down
2 changes: 1 addition & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,6 @@ charset = utf-8
charset = utf-8-bom
dotnet_remove_unnecessary_suppression_exclusions = category: ReSharper

[*.{csproj,props,targets,nuspec}]
[*.{csproj,props,targets,nuspec,config}]
indent_style = space
indent_size = 2
10 changes: 5 additions & 5 deletions DotNet/CesiumLanguageWriter/CesiumLanguageWriter.csproj
Original file line number Diff line number Diff line change
@@ -1,10 +1,9 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net40</TargetFramework>
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<TargetFramework>netstandard2.0</TargetFramework>
<TargetFramework Condition="'$(CSToJava)' == 'True'">net472</TargetFramework>
<AppendTargetFrameworkToOutputPath>False</AppendTargetFrameworkToOutputPath>
<GenerateDocumentationFile>True</GenerateDocumentationFile>
<SignAssembly>True</SignAssembly>
<AssemblyOriginatorKeyFile>..\StrongNameKey.snk</AssemblyOriginatorKeyFile>
<LangVersion>3</LangVersion>
<PackageId>$(AssemblyName)</PackageId>
<Title>$(AssemblyName)</Title>
Expand All @@ -17,7 +16,8 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="JetBrains.Annotations" Version="2022.1.0" PrivateAssets="all" ExcludeAssets="runtime" />
<PackageReference Include="JetBrains.Annotations" Version="2022.3.1" PrivateAssets="all" ExcludeAssets="runtime" />
<PackageReference Include="System.Drawing.Common" Version="4.7.2" />
</ItemGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net40</TargetFramework>
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<SignAssembly>True</SignAssembly>
<AssemblyOriginatorKeyFile>..\StrongNameKey.snk</AssemblyOriginatorKeyFile>
<TargetFramework>net60</TargetFramework>
<TargetFramework Condition="'$(CSToJava)' == 'True'">net472</TargetFramework>
<AppendTargetFrameworkToOutputPath>False</AppendTargetFrameworkToOutputPath>
<LangVersion>3</LangVersion>
</PropertyGroup>

Expand All @@ -15,10 +14,15 @@
</ItemGroup>

<ItemGroup>
<PackageReference Include="JetBrains.Annotations" Version="2022.1.0" PrivateAssets="all" ExcludeAssets="runtime" />
<PackageReference Include="JetBrains.Annotations" Version="2022.3.1" PrivateAssets="all" ExcludeAssets="runtime" />
<PackageReference Include="NUnit" Version="3.13.3" />
</ItemGroup>

<ItemGroup Condition="'$(CSToJava)' != 'True'">
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.6.2" />
<PackageReference Include="NUnit3TestAdapter" Version="4.5.0" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\CesiumLanguageWriter\CesiumLanguageWriter.csproj" />
</ItemGroup>
Expand Down
4 changes: 3 additions & 1 deletion DotNet/Directory.build.props
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
<Project>
<PropertyGroup>
<Company>AGI, an Ansys Company</Company>
<Company>Ansys Government Initiatives (AGI)</Company>
<Authors>$(Company)</Authors>
<Product>CesiumLanguageWriter</Product>
<Copyright>Copyright © 2011-$([System.DateTime]::Now.ToString('yyyy')) $(Company)</Copyright>
<Description>A library for writing CZML content for use with Cesium.</Description>
<SignAssembly>True</SignAssembly>
<AssemblyOriginatorKeyFile>$(MSBuildThisFileDirectory)StrongNameKey.snk</AssemblyOriginatorKeyFile>
</PropertyGroup>
</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>ExampleCesiumLanguageServer</RootNamespace>
<AssemblyName>ExampleCesiumLanguageServer</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<SignAssembly>true</SignAssembly>
<AssemblyOriginatorKeyFile>..\StrongNameKey.snk</AssemblyOriginatorKeyFile>
Expand All @@ -20,6 +20,8 @@
<IISExpressWindowsAuthentication />
<IISExpressUseClassicPipelineMode />
<UseGlobalApplicationHostFile />
<TargetFrameworkProfile />
<Use64BitIISExpress />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
Expand All @@ -41,7 +43,6 @@
<ItemGroup>
<Reference Include="Microsoft.CSharp" />
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Drawing" />
<Reference Include="System.Web" />
</ItemGroup>
Expand Down
4 changes: 2 additions & 2 deletions DotNet/ExampleCesiumLanguageServer/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@
[assembly: AssemblyTitle("ExampleCesiumLanguageServer")]
[assembly: AssemblyDescription("A sample web application demonstrating writing CZML content and loading it in Cesium.")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Analytical Graphics, Inc.")]
[assembly: AssemblyCompany("Ansys Government Initiatives (AGI)")]
[assembly: AssemblyProduct("ExampleCesiumLanguageServer")]
[assembly: AssemblyCopyright("Copyright © 2014-2017 Cesium Contributors")]
[assembly: AssemblyCopyright("Copyright © 2014-2023 Ansys Government Initiatives (AGI) and Contributors")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]

Expand Down
13 changes: 5 additions & 8 deletions DotNet/ExampleCesiumLanguageServer/Web.config
Original file line number Diff line number Diff line change
@@ -1,16 +1,13 @@
<?xml version="1.0"?>

<!--
This is just the stock web.config file from the "Empty ASP.NET Project" template.
For more information on how to configure your ASP.NET application, please visit
http://go.microsoft.com/fwlink/?LinkId=169433
-->

<configuration>
<system.web>
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5" />
</system.web>

</configuration>
<system.web>
<compilation debug="true" targetFramework="4.7.2"/>
<httpRuntime targetFramework="4.7.2"/>
</system.web>
</configuration>
27 changes: 11 additions & 16 deletions DotNet/GenerateFromSchema/CSharpGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
using JetBrains.Annotations;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using Newtonsoft.Json.Schema;

namespace GenerateFromSchema
{
Expand Down Expand Up @@ -247,11 +246,7 @@ private static void WritePacketOpenClose(CodeWriter writer)
writer.WriteLine();
}

private static bool PropertyValueIsLeaf(Property property)
{
JsonSchemaType jsonTypes = property.ValueType.JsonTypes;
return !jsonTypes.HasFlag(JsonSchemaType.Object);
}
private static bool PropertyValueIsLeaf(Property property) => !property.ValueType.JsonTypes.HasFlag(SchemaType.Object);

private void WriteProperties(CodeWriter writer, Schema schema)
{
Expand Down Expand Up @@ -536,27 +531,27 @@ private IEnumerable<OverloadInfo> GetOverloadsForProperty(Property property)
{
if (property.ValueType.IsSchemaFromType)
{
JsonSchemaType type = property.ValueType.JsonTypes;
SchemaType type = property.ValueType.JsonTypes;

if (type.HasFlag(JsonSchemaType.Object) ||
type.HasFlag(JsonSchemaType.Array) ||
type.HasFlag(JsonSchemaType.Null) ||
type.HasFlag(JsonSchemaType.Any) ||
type == JsonSchemaType.None)
if (type.HasFlag(SchemaType.Object) ||
type.HasFlag(SchemaType.Array) ||
type.HasFlag(SchemaType.Null) ||
type.HasFlag(SchemaType.Any) ||
type == SchemaType.None)
{
throw new Exception($"Property '{property.Name}' does not specify a $ref to a schema, nor is it a simple JSON type.");
}

if (type.HasFlag(JsonSchemaType.String))
if (type.HasFlag(SchemaType.String))
yield return s_defaultStringOverload;

if (type.HasFlag(JsonSchemaType.Float))
if (type.HasFlag(SchemaType.Float))
yield return s_defaultDoubleOverload;

if (type.HasFlag(JsonSchemaType.Integer))
if (type.HasFlag(SchemaType.Integer))
yield return s_defaultIntegerOverload;

if (type.HasFlag(JsonSchemaType.Boolean))
if (type.HasFlag(SchemaType.Boolean))
yield return s_defaultBooleanOverload;
}
else
Expand Down
2 changes: 1 addition & 1 deletion DotNet/GenerateFromSchema/GenerateFromSchema.cs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ public enum GeneratorType
{
CSharp,
MarkDown,
Validation
Validation,
}

public class Options
Expand Down
10 changes: 4 additions & 6 deletions DotNet/GenerateFromSchema/GenerateFromSchema.csproj
Original file line number Diff line number Diff line change
@@ -1,16 +1,14 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net46</TargetFramework>
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<SignAssembly>True</SignAssembly>
<AssemblyOriginatorKeyFile>..\StrongNameKey.snk</AssemblyOriginatorKeyFile>
<TargetFramework>net472</TargetFramework>
<AppendTargetFrameworkToOutputPath>False</AppendTargetFrameworkToOutputPath>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="CommandLineParser" Version="1.9.71" />
<PackageReference Include="JetBrains.Annotations" Version="2022.1.0" PrivateAssets="all" ExcludeAssets="runtime" />
<PackageReference Include="Newtonsoft.Json" Version="6.0.8" />
<PackageReference Include="JetBrains.Annotations" Version="2022.3.1" PrivateAssets="all" ExcludeAssets="runtime" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
</ItemGroup>

<ItemGroup>
Expand Down
38 changes: 17 additions & 21 deletions DotNet/GenerateFromSchema/MarkdownGenerator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@
using System.IO;
using System.Linq;
using Newtonsoft.Json.Linq;
using Newtonsoft.Json.Schema;

namespace GenerateFromSchema
{
Expand Down Expand Up @@ -175,26 +174,23 @@ public void Generate(Schema schema, bool isValue)
}
}

private static string JsonSchemaTypesToLabel(JsonSchemaType type)
private static string JsonSchemaTypesToLabel(SchemaType type)
{
var types = new string[6];

int index = 0;

if ((type & JsonSchemaType.String) == JsonSchemaType.String)
types[index++] = "string";
if ((type & JsonSchemaType.Float) == JsonSchemaType.Float || (type & JsonSchemaType.Integer) == JsonSchemaType.Integer)
types[index++] = "number";
if ((type & JsonSchemaType.Boolean) == JsonSchemaType.Boolean)
types[index++] = "boolean";
if ((type & JsonSchemaType.Object) == JsonSchemaType.Object)
types[index++] = "object";
if ((type & JsonSchemaType.Array) == JsonSchemaType.Array)
types[index++] = "array";
if ((type & JsonSchemaType.Null) == JsonSchemaType.Null)
types[index++] = "null";

switch (index)
var types = new List<string>();
if (type.HasFlag(SchemaType.String))
types.Add("string");
if (type.HasFlag(SchemaType.Float) || type.HasFlag(SchemaType.Integer))
types.Add("number");
if (type.HasFlag(SchemaType.Boolean))
types.Add("boolean");
if (type.HasFlag(SchemaType.Object))
types.Add("object");
if (type.HasFlag(SchemaType.Array))
types.Add("array");
if (type.HasFlag(SchemaType.Null))
types.Add("null");

switch (types.Count)
{
case 0:
return "";
Expand All @@ -203,7 +199,7 @@ private static string JsonSchemaTypesToLabel(JsonSchemaType type)
case 2:
return types[0] + " or " + types[1];
default:
return string.Join(", ", types, 0, index - 1) + ", or " + types[index - 1];
return string.Join(", ", types.Take(types.Count - 1)) + ", or " + types.Last();
}
}
}
Expand Down
8 changes: 8 additions & 0 deletions DotNet/GenerateFromSchema/Properties/launchSettings.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,14 @@
"GenerateFromSchema": {
"commandName": "Project",
"commandLineArgs": "-p $(SolutionDir)..\\Schema\\Packet.json -t csharp -o $(SolutionDir)CesiumLanguageWriter\\Generated --configuration GenerateCSharp.config.json"
},
"GenerateValidation": {
"commandName": "Project",
"commandLineArgs": "-p $(SolutionDir)..\\Schema\\Packet.json -t validation -o $(SolutionDir)CesiumLanguageWriterTests"
},
"GenerateMarkdown": {
"commandName": "Project",
"commandLineArgs": "-p $(SolutionDir)..\\Schema\\Packet.json -t markdown -o $(SolutionDir)..\\..\\czml-writer.wiki\\CZML"
}
}
}
5 changes: 3 additions & 2 deletions DotNet/GenerateFromSchema/Schema.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
using System.Collections.Generic;
using System.Linq;
using JetBrains.Annotations;
using Newtonsoft.Json.Schema;

namespace GenerateFromSchema
{
Expand All @@ -22,7 +21,9 @@ public Schema()
[NotNull]
public List<Schema> Extends { get; } = new List<Schema>();

public JsonSchemaType JsonTypes { get; set; }
public SchemaType JsonTypes { get; set; }

public bool IsArray => JsonTypes.HasFlag(SchemaType.Array);

[NotNull]
public List<Property> Properties { get; } = new List<Property>();
Expand Down
Loading

0 comments on commit 93c99bb

Please sign in to comment.