Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in / Register
Toggle navigation
S
spring-boot
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
DEMO
spring-boot
Commits
3b259bc8
Commit
3b259bc8
authored
Jan 14, 2014
by
Phillip Webb
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Polish
parent
5592023f
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
58 additions
and
33 deletions
+58
-33
SettingsXmlRepositorySystemSessionAutoConfiguration.java
.../SettingsXmlRepositorySystemSessionAutoConfiguration.java
+37
-32
SettingsXmlRepositorySystemSessionAutoConfigurationTests.java
...ingsXmlRepositorySystemSessionAutoConfigurationTests.java
+21
-1
No files found.
spring-boot-cli/src/main/java/org/springframework/boot/cli/compiler/grape/SettingsXmlRepositorySystemSessionAutoConfiguration.java
View file @
3b259bc8
/*
* Copyright 2012-2014 the original author or authors.
*
* 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.
*/
package
org
.
springframework
.
boot
.
cli
.
compiler
.
grape
;
package
org
.
springframework
.
boot
.
cli
.
compiler
.
grape
;
import
java.io.File
;
import
java.io.File
;
...
@@ -10,7 +26,6 @@ import org.apache.maven.settings.building.DefaultSettingsBuilderFactory;
...
@@ -10,7 +26,6 @@ import org.apache.maven.settings.building.DefaultSettingsBuilderFactory;
import
org.apache.maven.settings.building.DefaultSettingsBuildingRequest
;
import
org.apache.maven.settings.building.DefaultSettingsBuildingRequest
;
import
org.apache.maven.settings.building.SettingsBuildingException
;
import
org.apache.maven.settings.building.SettingsBuildingException
;
import
org.apache.maven.settings.building.SettingsBuildingRequest
;
import
org.apache.maven.settings.building.SettingsBuildingRequest
;
import
org.apache.maven.settings.building.SettingsBuildingResult
;
import
org.eclipse.aether.DefaultRepositorySystemSession
;
import
org.eclipse.aether.DefaultRepositorySystemSession
;
import
org.eclipse.aether.RepositorySystem
;
import
org.eclipse.aether.RepositorySystem
;
import
org.eclipse.aether.repository.Authentication
;
import
org.eclipse.aether.repository.Authentication
;
...
@@ -33,9 +48,12 @@ import org.eclipse.aether.util.repository.DefaultProxySelector;
...
@@ -33,9 +48,12 @@ import org.eclipse.aether.util.repository.DefaultProxySelector;
public
class
SettingsXmlRepositorySystemSessionAutoConfiguration
implements
public
class
SettingsXmlRepositorySystemSessionAutoConfiguration
implements
RepositorySystemSessionAutoConfiguration
{
RepositorySystemSessionAutoConfiguration
{
private
static
final
String
HOME_DIR
=
System
.
getProperty
(
"user.home"
);
@Override
@Override
public
void
apply
(
DefaultRepositorySystemSession
session
,
public
void
apply
(
DefaultRepositorySystemSession
session
,
RepositorySystem
repositorySystem
)
{
RepositorySystem
repositorySystem
)
{
Settings
settings
=
loadSettings
();
Settings
settings
=
loadSettings
();
session
.
setOffline
(
settings
.
isOffline
());
session
.
setOffline
(
settings
.
isOffline
());
...
@@ -44,7 +62,6 @@ public class SettingsXmlRepositorySystemSessionAutoConfiguration implements
...
@@ -44,7 +62,6 @@ public class SettingsXmlRepositorySystemSessionAutoConfiguration implements
session
.
setProxySelector
(
createProxySelector
(
settings
));
session
.
setProxySelector
(
createProxySelector
(
settings
));
String
localRepository
=
settings
.
getLocalRepository
();
String
localRepository
=
settings
.
getLocalRepository
();
if
(
localRepository
!=
null
)
{
if
(
localRepository
!=
null
)
{
session
.
setLocalRepositoryManager
(
repositorySystem
.
newLocalRepositoryManager
(
session
.
setLocalRepositoryManager
(
repositorySystem
.
newLocalRepositoryManager
(
session
,
new
LocalRepository
(
localRepository
)));
session
,
new
LocalRepository
(
localRepository
)));
...
@@ -52,61 +69,49 @@ public class SettingsXmlRepositorySystemSessionAutoConfiguration implements
...
@@ -52,61 +69,49 @@ public class SettingsXmlRepositorySystemSessionAutoConfiguration implements
}
}
private
Settings
loadSettings
()
{
private
Settings
loadSettings
()
{
File
settingsFile
=
new
File
(
HOME_DIR
,
".m2/settings.xml"
);
SettingsBuildingRequest
request
=
new
DefaultSettingsBuildingRequest
();
SettingsBuildingRequest
request
=
new
DefaultSettingsBuildingRequest
();
request
.
setUserSettingsFile
(
settingsFile
);
File
userSettingsFile
=
new
File
(
System
.
getProperty
(
"user.home"
),
".m2/settings.xml"
);
request
.
setUserSettingsFile
(
userSettingsFile
);
SettingsBuildingResult
result
;
try
{
try
{
result
=
new
DefaultSettingsBuilderFactory
().
newInstance
().
build
(
request
);
return
new
DefaultSettingsBuilderFactory
().
newInstance
().
build
(
request
)
.
getEffectiveSettings
();
}
}
catch
(
SettingsBuildingException
e
)
{
catch
(
SettingsBuildingException
e
x
)
{
throw
new
IllegalStateException
(
"Failed to build settings from "
throw
new
IllegalStateException
(
"Failed to build settings from "
+
userSettingsFile
,
e
);
+
settingsFile
,
ex
);
}
}
return
result
.
getEffectiveSettings
();
}
}
private
MirrorSelector
createMirrorSelector
(
Settings
settings
)
{
private
MirrorSelector
createMirrorSelector
(
Settings
settings
)
{
DefaultMirrorSelector
mirrorS
elector
=
new
DefaultMirrorSelector
();
DefaultMirrorSelector
s
elector
=
new
DefaultMirrorSelector
();
for
(
Mirror
mirror
:
settings
.
getMirrors
())
{
for
(
Mirror
mirror
:
settings
.
getMirrors
())
{
mirrorSelector
.
add
(
mirror
.
getId
(),
mirror
.
getUrl
(),
mirror
.
getLayout
()
,
selector
.
add
(
mirror
.
getId
(),
mirror
.
getUrl
(),
mirror
.
getLayout
(),
false
,
false
,
mirror
.
getMirrorOf
(),
mirror
.
getMirrorOfLayouts
());
mirror
.
getMirrorOf
(),
mirror
.
getMirrorOfLayouts
());
}
}
return
mirrorS
elector
;
return
s
elector
;
}
}
private
AuthenticationSelector
createAuthenticationSelector
(
Settings
settings
)
{
private
AuthenticationSelector
createAuthenticationSelector
(
Settings
settings
)
{
DefaultAuthenticationSelector
authenticationSelector
=
new
DefaultAuthenticationSelector
();
DefaultAuthenticationSelector
selector
=
new
DefaultAuthenticationSelector
();
for
(
Server
server
:
settings
.
getServers
())
{
for
(
Server
server
:
settings
.
getServers
())
{
AuthenticationBuilder
auth
=
new
AuthenticationBuilder
();
AuthenticationBuilder
auth
=
new
AuthenticationBuilder
();
auth
.
addUsername
(
server
.
getUsername
()).
addPassword
(
server
.
getPassword
());
auth
.
addUsername
(
server
.
getUsername
()).
addPassword
(
server
.
getPassword
());
auth
.
addPrivateKey
(
server
.
getPrivateKey
(),
server
.
getPassphrase
());
auth
.
addPrivateKey
(
server
.
getPrivateKey
(),
server
.
getPassphrase
());
authenticationS
elector
.
add
(
server
.
getId
(),
auth
.
build
());
s
elector
.
add
(
server
.
getId
(),
auth
.
build
());
}
}
return
new
ConservativeAuthenticationSelector
(
selector
);
return
new
ConservativeAuthenticationSelector
(
authenticationSelector
);
}
}
private
ProxySelector
createProxySelector
(
Settings
settings
)
{
private
ProxySelector
createProxySelector
(
Settings
settings
)
{
DefaultProxySelector
proxySelector
=
new
DefaultProxySelector
();
DefaultProxySelector
selector
=
new
DefaultProxySelector
();
for
(
Proxy
proxy
:
settings
.
getProxies
())
{
for
(
Proxy
proxy
:
settings
.
getProxies
())
{
Authentication
authentication
=
new
AuthenticationBuilder
()
Authentication
authentication
=
new
AuthenticationBuilder
()
.
addUsername
(
proxy
.
getUsername
()).
addPassword
(
proxy
.
getPassword
())
.
addUsername
(
proxy
.
getUsername
()).
addPassword
(
proxy
.
getPassword
())
.
build
();
.
build
();
selector
.
add
(
new
org
.
eclipse
.
aether
.
repository
.
Proxy
(
proxy
.
getProtocol
(),
proxySelector
.
add
(
proxy
.
getHost
(),
proxy
.
getPort
(),
authentication
),
proxy
new
org
.
eclipse
.
aether
.
repository
.
Proxy
(
proxy
.
getProtocol
(),
proxy
.
getNonProxyHosts
());
.
getHost
(),
proxy
.
getPort
(),
authentication
),
proxy
.
getNonProxyHosts
());
}
}
return
selector
;
return
proxySelector
;
}
}
}
}
spring-boot-cli/src/test/java/org/springframework/boot/cli/compiler/grape/SettingsXmlRepositorySystemSessionAutoConfigurationTests.java
View file @
3b259bc8
/*
* Copyright 2012-2014 the original author or authors.
*
* 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.
*/
package
org
.
springframework
.
boot
.
cli
.
compiler
.
grape
;
package
org
.
springframework
.
boot
.
cli
.
compiler
.
grape
;
import
org.apache.maven.repository.internal.MavenRepositorySystemUtils
;
import
org.apache.maven.repository.internal.MavenRepositorySystemUtils
;
...
@@ -11,10 +27,14 @@ import org.junit.rules.ExpectedException;
...
@@ -11,10 +27,14 @@ import org.junit.rules.ExpectedException;
import
org.junit.runner.RunWith
;
import
org.junit.runner.RunWith
;
import
org.mockito.Mock
;
import
org.mockito.Mock
;
import
org.mockito.runners.MockitoJUnitRunner
;
import
org.mockito.runners.MockitoJUnitRunner
;
import
org.springframework.boot.cli.compiler.grape.SettingsXmlRepositorySystemSessionAutoConfiguration
;
import
static
org
.
junit
.
Assert
.
assertNotNull
;
import
static
org
.
junit
.
Assert
.
assertNotNull
;
/**
* Tests for {@link SettingsXmlRepositorySystemSessionAutoConfiguration}.
*
* @author Andy Wilkinson
*/
@RunWith
(
MockitoJUnitRunner
.
class
)
@RunWith
(
MockitoJUnitRunner
.
class
)
public
class
SettingsXmlRepositorySystemSessionAutoConfigurationTests
{
public
class
SettingsXmlRepositorySystemSessionAutoConfigurationTests
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment