IGNITE-6253 .NET: Use DocFX for API documentation

This closes #2588


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/b08eef24
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/b08eef24
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/b08eef24

Branch: refs/heads/ignite-3478
Commit: b08eef240364f4ecf639aba36a8f59d5607a205b
Parents: e66b98b
Author: Pavel Tupitsyn <[email protected]>
Authored: Wed Sep 6 16:54:25 2017 +0300
Committer: Pavel Tupitsyn <[email protected]>
Committed: Wed Sep 6 16:54:25 2017 +0300

----------------------------------------------------------------------
 modules/clients/pom.xml                         |   6 +-
 .../Resource/InstanceResourceAttribute.cs       |   3 +-
 modules/platforms/dotnet/docfx/.gitignore       |   9 ++
 .../dotnet/docfx/Apache.Ignite.docfx.json       |  88 +++++++++++++++++++
 modules/platforms/dotnet/docfx/README.txt       |   2 +
 modules/platforms/dotnet/docfx/api/index.md     |   5 ++
 modules/platforms/dotnet/docfx/filterConfig.yml |   3 +
 .../platforms/dotnet/docfx/generate-docs.cmd    |   1 +
 .../platforms/dotnet/docfx/images/favicon.ico   | Bin 0 -> 1150 bytes
 .../dotnet/docfx/images/logo_ignite_32_32.png   | Bin 0 -> 1676 bytes
 modules/platforms/dotnet/docfx/index.md         |  10 +++
 modules/platforms/dotnet/docfx/toc.yml          |   3 +
 parent/pom.xml                                  |   1 +
 13 files changed, 125 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/b08eef24/modules/clients/pom.xml
----------------------------------------------------------------------
diff --git a/modules/clients/pom.xml b/modules/clients/pom.xml
index eaaf995..002f16f 100644
--- a/modules/clients/pom.xml
+++ b/modules/clients/pom.xml
@@ -173,11 +173,9 @@
                                 <phase>prepare-package</phase>
                                 <configuration>
                                     <target>
-                                        <exec executable="${doxygen.exec}" 
searchpath="true" dir="../platforms/dotnet/">
-                                            <arg value="Apache.Ignite.dxg" />
+                                        <exec executable="${docfx.exec}" 
searchpath="true" dir="../platforms/dotnet/docfx/">
+                                            <arg 
value="Apache.Ignite.docfx.json" />
                                         </exec>
-
-                                        <copy 
file="../../assembly/docfiles/ignite_logo.png" todir="target/dotnetdoc/html" />
                                     </target>
                                 </configuration>
                             </execution>

http://git-wip-us.apache.org/repos/asf/ignite/blob/b08eef24/modules/platforms/dotnet/Apache.Ignite.Core/Resource/InstanceResourceAttribute.cs
----------------------------------------------------------------------
diff --git 
a/modules/platforms/dotnet/Apache.Ignite.Core/Resource/InstanceResourceAttribute.cs
 
b/modules/platforms/dotnet/Apache.Ignite.Core/Resource/InstanceResourceAttribute.cs
index 8b34c10..d63163c 100644
--- 
a/modules/platforms/dotnet/Apache.Ignite.Core/Resource/InstanceResourceAttribute.cs
+++ 
b/modules/platforms/dotnet/Apache.Ignite.Core/Resource/InstanceResourceAttribute.cs
@@ -19,11 +19,10 @@ namespace Apache.Ignite.Core.Resource
 {
     using System;
     using Apache.Ignite.Core.Compute;
-    using Apache.Ignite.Core.Impl.Compute;
 
     /// <summary>
     /// Attribute which injects <see cref="IIgnite"/> instance. Can be defined 
inside
-    /// implementors of <see cref="IComputeTask{A,T,TR}"/> and <see 
cref="IComputeJob"/> interfaces.
+    /// implementors of <see cref="IComputeTask{A,T,TR}"/> and <see 
cref="IComputeJob{T}"/> interfaces.
     /// Can be applied to non-static fields, properties and methods returning 
<c>void</c> and 
     /// accepting a single parameter.
     /// </summary>

http://git-wip-us.apache.org/repos/asf/ignite/blob/b08eef24/modules/platforms/dotnet/docfx/.gitignore
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/docfx/.gitignore 
b/modules/platforms/dotnet/docfx/.gitignore
new file mode 100644
index 0000000..4378419
--- /dev/null
+++ b/modules/platforms/dotnet/docfx/.gitignore
@@ -0,0 +1,9 @@
+###############
+#    folder   #
+###############
+/**/DROP/
+/**/TEMP/
+/**/packages/
+/**/bin/
+/**/obj/
+_site

http://git-wip-us.apache.org/repos/asf/ignite/blob/b08eef24/modules/platforms/dotnet/docfx/Apache.Ignite.docfx.json
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/docfx/Apache.Ignite.docfx.json 
b/modules/platforms/dotnet/docfx/Apache.Ignite.docfx.json
new file mode 100644
index 0000000..3161ae2
--- /dev/null
+++ b/modules/platforms/dotnet/docfx/Apache.Ignite.docfx.json
@@ -0,0 +1,88 @@
+{
+  "metadata": [
+    {
+      "src": [
+        {
+                 "src": "../",
+          "files": [
+            "**/Apache.Ignite.Core.csproj",
+            "**/Apache.Ignite.Linq.csproj",
+            "**/Apache.Ignite.AspNet.csproj",
+            "**/Apache.Ignite.EntityFramework.csproj",
+            "**/Apache.Ignite.NLog.csproj",
+            "**/Apache.Ignite.Log4Net.csproj"
+          ],
+          "exclude": [
+            "**/obj/**",
+            "**/bin/**",
+          ]
+        }
+      ],
+      "dest": "api",
+         "filter": "filterConfig.yml"
+    }
+  ],
+  "build": {
+    "content": [
+      {
+        "files": [
+          "api/**.yml",
+          "api/index.md"
+        ]
+      },
+      {
+        "files": [
+          "articles/**.md",
+          "articles/**/toc.yml",
+          "toc.yml",
+          "*.md"
+        ],
+        "exclude": [
+          "obj/**",
+        ]
+      }
+    ],
+    "resource": [
+      {
+        "files": [
+          "images/**"
+        ],
+        "exclude": [
+          "obj/**",
+        ]
+      }
+    ],
+    "overwrite": [
+      {
+        "files": [
+          "apidoc/**.md"
+        ],
+        "exclude": [
+          "obj/**",
+        ]
+      }
+    ],
+    "dest": "../../../clients/target/dotnetdoc",
+    "globalMetadataFiles": [],
+    "fileMetadataFiles": [],
+    "template": [
+      "default"
+    ],
+    "postProcessors": [],
+    "noLangKeyword": false,
+    "keepFileLink": false,
+    "cleanupCacheHistory": false,
+       "globalMetadata": {
+      "_gitContribute": {
+        "repo": "https://github.com/apache/ignite";,
+        "branch": "master"
+      },
+         "_enableSearch": true,
+      "_appTitle": "Apache Ignite.NET",
+         "_appFaviconPath": "images/favicon.ico",
+         "_appLogoPath": "images/logo_ignite_32_32.png",
+         "_appFooter": "© 2015 - 2017 The Apache Software Foundation",
+      "_disableContribution": true
+    }
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/b08eef24/modules/platforms/dotnet/docfx/README.txt
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/docfx/README.txt 
b/modules/platforms/dotnet/docfx/README.txt
new file mode 100644
index 0000000..4698356
--- /dev/null
+++ b/modules/platforms/dotnet/docfx/README.txt
@@ -0,0 +1,2 @@
+Apache Ignite.NET DocFX Project
+See https://dotnet.github.io/docfx/ for more details.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/b08eef24/modules/platforms/dotnet/docfx/api/index.md
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/docfx/api/index.md 
b/modules/platforms/dotnet/docfx/api/index.md
new file mode 100644
index 0000000..97b7f3a
--- /dev/null
+++ b/modules/platforms/dotnet/docfx/api/index.md
@@ -0,0 +1,5 @@
+# Apache Ignite.NET API Documentation
+
+Click namespaces on the left to browse the API, or use the search box on top 
of the page.
+
+[Ignition](Apache.Ignite.Core.Ignition.html) class is the API entry point, see 
various `Start` overloads.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/b08eef24/modules/platforms/dotnet/docfx/filterConfig.yml
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/docfx/filterConfig.yml 
b/modules/platforms/dotnet/docfx/filterConfig.yml
new file mode 100644
index 0000000..98b1615
--- /dev/null
+++ b/modules/platforms/dotnet/docfx/filterConfig.yml
@@ -0,0 +1,3 @@
+apiRules:
+  - exclude:
+      uidRegex: \.Impl\.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/b08eef24/modules/platforms/dotnet/docfx/generate-docs.cmd
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/docfx/generate-docs.cmd 
b/modules/platforms/dotnet/docfx/generate-docs.cmd
new file mode 100644
index 0000000..4babc29
--- /dev/null
+++ b/modules/platforms/dotnet/docfx/generate-docs.cmd
@@ -0,0 +1 @@
+docfx Apache.Ignite.docfx.json --build
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/b08eef24/modules/platforms/dotnet/docfx/images/favicon.ico
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/docfx/images/favicon.ico 
b/modules/platforms/dotnet/docfx/images/favicon.ico
new file mode 100644
index 0000000..b36f8d7
Binary files /dev/null and b/modules/platforms/dotnet/docfx/images/favicon.ico 
differ

http://git-wip-us.apache.org/repos/asf/ignite/blob/b08eef24/modules/platforms/dotnet/docfx/images/logo_ignite_32_32.png
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/docfx/images/logo_ignite_32_32.png 
b/modules/platforms/dotnet/docfx/images/logo_ignite_32_32.png
new file mode 100644
index 0000000..c5e4056
Binary files /dev/null and 
b/modules/platforms/dotnet/docfx/images/logo_ignite_32_32.png differ

http://git-wip-us.apache.org/repos/asf/ignite/blob/b08eef24/modules/platforms/dotnet/docfx/index.md
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/docfx/index.md 
b/modules/platforms/dotnet/docfx/index.md
new file mode 100644
index 0000000..d240c0b
--- /dev/null
+++ b/modules/platforms/dotnet/docfx/index.md
@@ -0,0 +1,10 @@
+# Apache Ignite.NET In-Memory Data Fabric
+
+<img src="https://ignite.apache.org/images/logo3.png"; hspace="20" /><img 
src="https://ptupitsyn.github.io/images/net-framework.png"; hspace="20" />
+
+Apache Ignite In-Memory Data Fabric is designed to deliver uncompromised 
performance for a wide set of in-memory computing use cases from 
+[high performance computing](https://ignite.apache.org/features.html), to the 
industry most advanced [data grid](https://ignite.apache.org/features.html), 
+highly available [service grid](https://ignite.apache.org/features.html), and 
[streaming](https://ignite.apache.org/features.html).
+
+* [API Documentation](/api)
+* [Gettting Started](https://apacheignite-net.readme.io/docs/getting-started)
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/b08eef24/modules/platforms/dotnet/docfx/toc.yml
----------------------------------------------------------------------
diff --git a/modules/platforms/dotnet/docfx/toc.yml 
b/modules/platforms/dotnet/docfx/toc.yml
new file mode 100644
index 0000000..7ad0d0d
--- /dev/null
+++ b/modules/platforms/dotnet/docfx/toc.yml
@@ -0,0 +1,3 @@
+- name: Apache Ignite.NET API Documentation
+  href: api/
+  homepage: api/index.md

http://git-wip-us.apache.org/repos/asf/ignite/blob/b08eef24/parent/pom.xml
----------------------------------------------------------------------
diff --git a/parent/pom.xml b/parent/pom.xml
index 7443753..e716254 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -42,6 +42,7 @@
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <maven.build.timestamp.format>MMMM d 
yyyy</maven.build.timestamp.format>
         <doxygen.exec>doxygen</doxygen.exec>
+        <docfx.exec>docfx</docfx.exec>
         <git.exec>git</git.exec>
         <maven.bundle.plugin.version>2.5.4</maven.bundle.plugin.version>
         <javadoc.opts>-XDenableSunApiLintControl</javadoc.opts>

Reply via email to