Skip to content

Commit

Permalink
Merge branch 'master' into feature/releasePipe
Browse files Browse the repository at this point in the history
  • Loading branch information
asaharn authored Feb 7, 2024
2 parents 39decae + f696d0f commit 90e236d
Show file tree
Hide file tree
Showing 70 changed files with 3,790 additions and 1,914 deletions.
21 changes: 21 additions & 0 deletions .scalafix.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
rules = [
NoAutoTupling,
RemoveUnused,
DisableSyntax,
LeakingImplicitClassVal,
NoValInForComprehension,
ProcedureSyntax
]

DisableSyntax.noVars = true
DisableSyntax.noThrows = true
DisableSyntax.noNulls = true
DisableSyntax.noReturns = true
DisableSyntax.noWhileLoops = true
DisableSyntax.noAsInstanceOf = true
DisableSyntax.noIsInstanceOf = true
DisableSyntax.noXml = true
DisableSyntax.noDefaultArgs = true
DisableSyntax.noFinalVal = true
DisableSyntax.noFinalize = true
DisableSyntax.noValPatterns = true
34 changes: 34 additions & 0 deletions .scalafmt.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

align = none
align.openParenDefnSite = false
align.openParenCallSite = false
align.tokens = []
optIn = {
configStyleArguments = false
}
danglingParentheses.preset = false
docstrings.style = Asterisk
maxColumn = 98
runner.dialect = scala212
fileOverride {
"glob:**/src/**/scala-2.13/**.scala" {
runner.dialect = scala213
}
}
version = 3.5.9
10 changes: 10 additions & 0 deletions connector/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -357,6 +357,16 @@
</executions>
<configuration>
<addScalacArgs>-target:jvm-1.8</addScalacArgs>
<args>
<arg>-Ywarn-unused</arg> <!-- if you need exactly RemoveUnused -->
</args>
<compilerPlugins>
<compilerPlugin>
<groupId>org.scalameta</groupId>
<artifactId>semanticdb-scalac_${scala.version.major}.${scala.version.minor}</artifactId>
<version>4.8.14</version>
</compilerPlugin>
</compilerPlugins>
</configuration>
</plugin>
<plugin>
Expand Down
166 changes: 54 additions & 112 deletions connector/scalastyle_config.xml
Original file line number Diff line number Diff line change
@@ -1,188 +1,130 @@
<scalastyle commentFilter="enabled">
<name>Scalastyle standard configuration</name>
<check class="org.scalastyle.file.FileTabChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.file.FileLengthChecker" level="warning" enabled="true">
<check level="warning" class="org.scalastyle.file.FileTabChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.file.FileLengthChecker" enabled="true">
<parameters>
<parameter name="maxFileLength"><![CDATA[800]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.file.HeaderMatchesChecker" level="warning" enabled="false">
<check level="warning" class="org.scalastyle.file.HeaderMatchesChecker" enabled="true">
<parameters>
<parameter name="header"><![CDATA[// Copyright (C) 2011-2012 the original author or authors.
// See the LICENCE.txt file distributed with this work for additional
// information regarding copyright ownership.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.]]></parameter>
<parameter name="header"><![CDATA[// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.SpacesAfterPlusChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.file.WhitespaceEndOfLineChecker" level="warning" enabled="true">
<parameters>
<parameter name="ignoreWhitespaceLines"><![CDATA[false]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.SpacesBeforePlusChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.file.FileLineLengthChecker" level="warning" enabled="true">
<check level="warning" class="org.scalastyle.scalariform.SpacesAfterPlusChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.file.WhitespaceEndOfLineChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.scalariform.SpacesBeforePlusChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.file.FileLineLengthChecker" enabled="true">
<parameters>
<parameter name="maxLineLength"><![CDATA[160]]></parameter>
<parameter name="tabSize"><![CDATA[2]]></parameter>
<parameter name="ignoreImports"><![CDATA[false]]></parameter>
<parameter name="tabSize"><![CDATA[4]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.ClassNamesChecker" level="warning" enabled="true">
<check level="warning" class="org.scalastyle.scalariform.ClassNamesChecker" enabled="true">
<parameters>
<parameter name="regex"><![CDATA[^[A-Z][A-Za-z0-9]*$]]></parameter>
<parameter name="regex"><![CDATA[[A-Z][A-Za-z]*]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.ObjectNamesChecker" level="warning" enabled="true">
<check level="warning" class="org.scalastyle.scalariform.ObjectNamesChecker" enabled="true">
<parameters>
<parameter name="regex"><![CDATA[^[A-Z][A-Za-z]*$]]></parameter>
<parameter name="regex"><![CDATA[[A-Z][A-Za-z]*]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.PackageObjectNamesChecker" level="warning" enabled="true">
<check level="warning" class="org.scalastyle.scalariform.PackageObjectNamesChecker" enabled="true">
<parameters>
<parameter name="regex"><![CDATA[^[a-z][A-Za-z]*$]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.EqualsHashCodeChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.IllegalImportsChecker" level="warning" enabled="true">
<check level="warning" class="org.scalastyle.scalariform.EqualsHashCodeChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.scalariform.IllegalImportsChecker" enabled="true">
<parameters>
<parameter name="illegalImports"><![CDATA[sun._,java.awt._]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.ParameterNumberChecker" level="warning" enabled="true">
<check level="warning" class="org.scalastyle.scalariform.ParameterNumberChecker" enabled="true">
<parameters>
<parameter name="maxParameters"><![CDATA[8]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.MagicNumberChecker" level="warning" enabled="true">
<check level="warning" class="org.scalastyle.scalariform.MagicNumberChecker" enabled="true">
<parameters>
<parameter name="ignore"><![CDATA[-1,0,1,2,3]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.NoWhitespaceBeforeLeftBracketChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.NoWhitespaceAfterLeftBracketChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.ReturnChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.NullChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.NoCloneChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.NoFinalizeChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.CovariantEqualsChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.StructuralTypeChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.file.RegexChecker" level="warning" enabled="true">
<check level="warning" class="org.scalastyle.scalariform.NoWhitespaceBeforeLeftBracketChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.scalariform.NoWhitespaceAfterLeftBracketChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.scalariform.ReturnChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.scalariform.NullChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.scalariform.NoCloneChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.scalariform.NoFinalizeChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.scalariform.CovariantEqualsChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.scalariform.StructuralTypeChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.file.RegexChecker" enabled="true">
<parameters>
<parameter name="regex"><![CDATA[println]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.NumberOfTypesChecker" level="warning" enabled="true">
<check level="warning" class="org.scalastyle.scalariform.NumberOfTypesChecker" enabled="true">
<parameters>
<parameter name="maxTypes"><![CDATA[30]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.CyclomaticComplexityChecker" level="warning" enabled="true">
<check level="warning" class="org.scalastyle.scalariform.CyclomaticComplexityChecker" enabled="true">
<parameters>
<parameter name="maximum"><![CDATA[10]]></parameter>
<parameter name="countCases"><![CDATA[true]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.UppercaseLChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.SimplifyBooleanExpressionChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.IfBraceChecker" level="warning" enabled="true">
<check level="warning" class="org.scalastyle.scalariform.UppercaseLChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.scalariform.SimplifyBooleanExpressionChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.scalariform.IfBraceChecker" enabled="true">
<parameters>
<parameter name="singleLineAllowed"><![CDATA[true]]></parameter>
<parameter name="doubleLineAllowed"><![CDATA[false]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.MethodLengthChecker" level="warning" enabled="true">
<check level="warning" class="org.scalastyle.scalariform.MethodLengthChecker" enabled="true">
<parameters>
<parameter name="maxLength"><![CDATA[100]]></parameter>
<parameter name="maxLength"><![CDATA[50]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.MethodNamesChecker" level="warning" enabled="true">
<check level="warning" class="org.scalastyle.scalariform.MethodNamesChecker" enabled="true">
<parameters>
<parameter name="regex"><![CDATA[^[a-z][A-Za-z0-9]*(_=)?$]]></parameter>
<parameter name="ignoreRegex"><![CDATA[^$]]></parameter>
<parameter name="ignoreOverride"><![CDATA[false]]></parameter>
<parameter name="regex"><![CDATA[^[a-z][A-Za-z0-9]*$]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.NumberOfMethodsInTypeChecker" level="warning" enabled="true">
<check level="warning" class="org.scalastyle.scalariform.NumberOfMethodsInTypeChecker" enabled="true">
<parameters>
<parameter name="maxMethods"><![CDATA[30]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.PublicMethodsHaveTypeChecker" level="warning" enabled="true">
<parameters>
<parameter name="ignoreOverride"><![CDATA[false]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.file.NewLineAtEofChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.file.NoNewLineAtEofChecker" level="warning" enabled="false"></check>
<check class="org.scalastyle.scalariform.WhileChecker" level="warning" enabled="false"></check>
<check class="org.scalastyle.scalariform.VarFieldChecker" level="warning" enabled="false"></check>
<check class="org.scalastyle.scalariform.VarLocalChecker" level="warning" enabled="false"></check>
<check class="org.scalastyle.scalariform.RedundantIfChecker" level="warning" enabled="false"></check>
<check class="org.scalastyle.scalariform.TokenChecker" level="warning" enabled="false">
<check level="warning" class="org.scalastyle.scalariform.PublicMethodsHaveTypeChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.file.NewLineAtEofChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.file.NoNewLineAtEofChecker" enabled="false"></check>
<check level="warning" class="org.scalastyle.scalariform.WhileChecker" enabled="false"></check>
<check level="warning" class="org.scalastyle.scalariform.VarFieldChecker" enabled="false"></check>
<check level="warning" class="org.scalastyle.scalariform.VarLocalChecker" enabled="false"></check>
<check level="warning" class="org.scalastyle.scalariform.RedundantIfChecker" enabled="false"></check>
<check level="warning" class="org.scalastyle.scalariform.TokenChecker" enabled="false">
<parameters>
<parameter name="regex"><![CDATA[println]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.DeprecatedJavaChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.OverrideJavaChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.EmptyClassChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.ClassTypeParameterChecker" level="warning" enabled="true">
<check level="warning" class="org.scalastyle.scalariform.DeprecatedJavaChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.scalariform.EmptyClassChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.scalariform.ClassTypeParameterChecker" enabled="true">
<parameters>
<parameter name="regex"><![CDATA[^[A-Z_]$]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.UnderscoreImportChecker" level="warning" enabled="false"></check>
<check class="org.scalastyle.scalariform.LowercasePatternMatchChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.EmptyInterpolatedStringChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.MultipleStringLiteralsChecker" level="warning" enabled="false">
<check level="warning" class="org.scalastyle.scalariform.UnderscoreImportChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.scalariform.LowercasePatternMatchChecker" enabled="true"></check>
<check level="warning" class="org.scalastyle.scalariform.MultipleStringLiteralsChecker" enabled="true">
<parameters>
<parameter name="allowed"><![CDATA[2]]></parameter>
<parameter name="ignoreRegex"><![CDATA[^""$]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.ImportGroupingChecker" level="warning" enabled="false"></check>
<check class="org.scalastyle.scalariform.NotImplementedErrorUsage" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.BlockImportChecker" level="warning" enabled="false"></check>
<check class="org.scalastyle.scalariform.ProcedureDeclarationChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.ForBraceChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.ForLoopChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.SpaceAfterCommentStartChecker" level="warning" enabled="true"></check>
<check class="org.scalastyle.scalariform.ScalaDocChecker" level="warning" enabled="false">
<parameters>
<parameter name="ignoreRegex"><![CDATA[^$]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.DisallowSpaceAfterTokenChecker" level="warning" enabled="false"></check>
<check class="org.scalastyle.scalariform.DisallowSpaceBeforeTokenChecker" level="warning" enabled="false"></check>
<check class="org.scalastyle.scalariform.EnsureSingleSpaceAfterTokenChecker" level="warning" enabled="false"></check>
<check class="org.scalastyle.scalariform.EnsureSingleSpaceBeforeTokenChecker" level="warning" enabled="false"></check>
<check class="org.scalastyle.scalariform.NonASCIICharacterChecker" level="warning" enabled="false"></check>
<check class="org.scalastyle.file.IndentationChecker" level="warning" enabled="false">
<parameters>
<parameter name="tabSize"><![CDATA[2]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.FieldNamesChecker" level="warning" enabled="false">
<parameters>
<parameter name="regex"><![CDATA[^[a-z][A-Za-z]*$]]></parameter>
<parameter name="objectFieldRegex"><![CDATA[^[A-Z][A-Za-z]*$]]></parameter>
</parameters>
</check>
<check class="org.scalastyle.scalariform.TodoCommentChecker" level="warning" enabled="true">
<parameters>
<parameter name="words"><![CDATA[TODO|FIXME]]></parameter>
</parameters>
</check>
<check level="warning" class="org.scalastyle.scalariform.ImportGroupingChecker" enabled="true"></check>
</scalastyle>
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ import com.microsoft.aad.msal4j.{DeviceCode, DeviceCodeFlowParameters, IAuthenti
import com.microsoft.azure.kusto.data.auth
import scala.concurrent.TimeoutException

class DeviceAuthentication (val cluster: String, val authority:String) extends auth.DeviceAuthTokenProvider(cluster, authority, null) {
class DeviceAuthentication(val cluster: String, val authority: String)
extends auth.DeviceAuthTokenProvider(cluster, authority, null) {
var currentDeviceCode: Option[DeviceCode] = None
var expiresAt: Option[Long] = None
val NewDeviceCodeFetchTimeout = 60L * 1000L
Expand All @@ -17,17 +18,18 @@ class DeviceAuthentication (val cluster: String, val authority:String) extends a
}

def acquireNewAccessTokenAsync(): CompletableFuture[IAuthenticationResult] = {
val deviceCodeConsumer: Consumer[DeviceCode] = toJavaConsumer((deviceCode:DeviceCode) => {
val deviceCodeConsumer: Consumer[DeviceCode] = toJavaConsumer((deviceCode: DeviceCode) => {
this.currentDeviceCode = Some(deviceCode)
this.expiresAt = Some(System.currentTimeMillis + (deviceCode.expiresIn() * 1000))
println(deviceCode.message())
})

val deviceCodeFlowParams: DeviceCodeFlowParameters = DeviceCodeFlowParameters.builder(scopes, deviceCodeConsumer).build
val deviceCodeFlowParams: DeviceCodeFlowParameters =
DeviceCodeFlowParameters.builder(scopes, deviceCodeConsumer).build
clientApplication.acquireToken(deviceCodeFlowParams)
}

implicit def toJavaConsumer[T](f:Function1[T, Unit]): Consumer[T] = new Consumer[T] {
implicit def toJavaConsumer[T](f: Function1[T, Unit]): Consumer[T] = new Consumer[T] {
override def accept(t: T) = f(t)
}

Expand Down
Loading

0 comments on commit 90e236d

Please sign in to comment.