1
2
3
4 package org.apache.maven.toolchain.model;
5
6 import java.io.Serializable;
7 import java.util.AbstractList;
8 import java.util.ArrayList;
9 import java.util.Collections;
10 import java.util.HashMap;
11 import java.util.List;
12 import java.util.Map;
13 import java.util.stream.Collectors;
14 import java.util.stream.Stream;
15 import org.apache.maven.api.annotations.Generated;
16 import org.apache.maven.api.annotations.Nonnull;
17
18 @Generated
19 public class PersistedToolchains
20 extends TrackableBase
21 implements Serializable, Cloneable
22 {
23
24
25 public PersistedToolchains()
26 {
27 this( org.apache.maven.api.toolchain.PersistedToolchains.newInstance() );
28 }
29
30 public PersistedToolchains( org.apache.maven.api.toolchain.PersistedToolchains delegate )
31 {
32 super( delegate );
33 }
34
35 public PersistedToolchains clone()
36 {
37 return new PersistedToolchains( getDelegate() );
38 }
39
40 @Override
41 public org.apache.maven.api.toolchain.PersistedToolchains getDelegate()
42 {
43 return ( org.apache.maven.api.toolchain.PersistedToolchains ) delegate;
44 }
45
46 public String getModelEncoding()
47 {
48 return getDelegate().getModelEncoding();
49 }
50
51 @Nonnull
52 public List<ToolchainModel> getToolchains()
53 {
54 return new WrapperList<ToolchainModel, org.apache.maven.api.toolchain.ToolchainModel>(
55 getDelegate()::getToolchains, l -> delegate = getDelegate().withToolchains( l ),
56 ToolchainModel::new, ToolchainModel::getDelegate );
57 }
58
59 public void setToolchains( List<ToolchainModel> toolchains )
60 {
61 delegate = getDelegate().withToolchains(
62 toolchains.stream().map( c -> c.getDelegate() ).collect( Collectors.toList() ) );
63 }
64
65 public void addToolchain( ToolchainModel toolchain )
66 {
67 delegate = getDelegate().withToolchains(
68 Stream.concat( getDelegate().getToolchains().stream(), Stream.of( toolchain.getDelegate() ) )
69 .collect( Collectors.toList() ) );
70 }
71
72 public static List<org.apache.maven.api.toolchain.PersistedToolchains> persistedToolchainsToApiV4( List<PersistedToolchains> list )
73 {
74 return list != null ? new WrapperList<>( list, PersistedToolchains::getDelegate, PersistedToolchains::new ) : null;
75 }
76
77 public static List<PersistedToolchains> persistedToolchainsToApiV3( List<org.apache.maven.api.toolchain.PersistedToolchains> list )
78 {
79 return list != null ? new WrapperList<>( list, PersistedToolchains::new, PersistedToolchains::getDelegate ) : null;
80 }
81
82 }