1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.toolchain;
20
21 import javax.inject.Named;
22 import javax.inject.Singleton;
23
24 import java.io.File;
25 import java.io.InputStream;
26 import java.nio.file.Files;
27
28 import org.apache.maven.toolchain.model.PersistedToolchains;
29 import org.apache.maven.toolchain.v4.MavenToolchainsStaxReader;
30 import org.slf4j.Logger;
31 import org.slf4j.LoggerFactory;
32
33
34
35
36 @Deprecated
37 @Named("default")
38 @Singleton
39 public class DefaultToolchainsBuilder implements ToolchainsBuilder {
40 private final Logger logger = LoggerFactory.getLogger(getClass());
41
42 @Override
43 public PersistedToolchains build(File userToolchainsFile) throws MisconfiguredToolchainException {
44 PersistedToolchains toolchains = null;
45
46 if (userToolchainsFile != null && userToolchainsFile.isFile()) {
47 try (InputStream in = Files.newInputStream(userToolchainsFile.toPath())) {
48 toolchains = new PersistedToolchains(new MavenToolchainsStaxReader().read(in));
49 } catch (Exception e) {
50 throw new MisconfiguredToolchainException(
51 "Cannot read toolchains file at " + userToolchainsFile.getAbsolutePath(), e);
52 }
53
54 } else if (userToolchainsFile != null) {
55 logger.debug("Toolchains configuration was not found at {}", userToolchainsFile);
56 }
57
58 return toolchains;
59 }
60 }