From 7a89b813134b8e8fdf012ec6ca5eb91ea6c6f578 Mon Sep 17 00:00:00 2001 From: Redth Date: Wed, 4 Oct 2017 09:18:10 -0400 Subject: [PATCH 1/2] Detect api.xml format doc files Originally when `JavaDocletType._ApiXml` was added, I forgot to put some logic in the method which determines what kind of doclet type to use from the file path itself, which this addresses. --- src/Xamarin.Android.Tools.Bytecode/ClassPath.cs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/Xamarin.Android.Tools.Bytecode/ClassPath.cs b/src/Xamarin.Android.Tools.Bytecode/ClassPath.cs index 03429747b..822d0fc7a 100644 --- a/src/Xamarin.Android.Tools.Bytecode/ClassPath.cs +++ b/src/Xamarin.Android.Tools.Bytecode/ClassPath.cs @@ -240,6 +240,15 @@ JavaDocletType GetDocletType (string path) kind = JavaDocletType.Java7; else if (rawHTML.Contains ("Generated by javadoc (1.8")) kind = JavaDocletType.Java8; + + // Check to see if it's an api.xml formatted doc + buf = new char[buf.Length]; + using (var reader = File.OpenText(path)) + reader.ReadBlock(buf, 0, buf.Length); + var rawXML = new string(buf); + if (rawXML.Contains("") && rawXML.Contains(" Date: Wed, 4 Oct 2017 16:11:34 -0400 Subject: [PATCH 2/2] Reuse buffer, fix coding conventions --- src/Xamarin.Android.Tools.Bytecode/ClassPath.cs | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/Xamarin.Android.Tools.Bytecode/ClassPath.cs b/src/Xamarin.Android.Tools.Bytecode/ClassPath.cs index 822d0fc7a..34ff92628 100644 --- a/src/Xamarin.Android.Tools.Bytecode/ClassPath.cs +++ b/src/Xamarin.Android.Tools.Bytecode/ClassPath.cs @@ -242,11 +242,12 @@ JavaDocletType GetDocletType (string path) kind = JavaDocletType.Java8; // Check to see if it's an api.xml formatted doc - buf = new char[buf.Length]; - using (var reader = File.OpenText(path)) - reader.ReadBlock(buf, 0, buf.Length); - var rawXML = new string(buf); - if (rawXML.Contains("") && rawXML.Contains("") && rawXML.Contains ("