integration test checks for reported dependencies
[teamcity/dotNetPackagesSupport.git] / nuget-common / src / jetbrains / buildServer / nuget / common / PackageDependencies.java
1 /*\r
2  * Copyright 2000-2011 JetBrains s.r.o.\r
3  *\r
4  * Licensed under the Apache License, Version 2.0 (the "License");\r
5  * you may not use this file except in compliance with the License.\r
6  * You may obtain a copy of the License at\r
7  *\r
8  * http://www.apache.org/licenses/LICENSE-2.0\r
9  *\r
10  * Unless required by applicable law or agreed to in writing, software\r
11  * distributed under the License is distributed on an "AS IS" BASIS,\r
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
13  * See the License for the specific language governing permissions and\r
14  * limitations under the License.\r
15  */\r
16 \r
17 package jetbrains.buildServer.nuget.common;\r
18 \r
19 import org.jetbrains.annotations.NotNull;\r
20 \r
21 import java.util.Collection;\r
22 import java.util.Collections;\r
23 import java.util.TreeSet;\r
24 \r
25 /**\r
26  * Represent list of downloaded dependecies of a build\r
27  * Created by Eugene Petrenko (eugene.petrenko@gmail.com)\r
28  * Date: 19.07.11 11:41\r
29  */\r
30 public class PackageDependencies {\r
31   private final Collection<String> mySources;\r
32   private final Collection<PackageInfo> myPackages;\r
33 \r
34   public PackageDependencies(@NotNull final Collection<String> sources,\r
35                              @NotNull final Collection<PackageInfo> packages) {\r
36     mySources = Collections.unmodifiableCollection(new TreeSet<String>(sources));\r
37     myPackages = Collections.unmodifiableCollection(new TreeSet<PackageInfo>(packages));\r
38   }\r
39 \r
40   /**\r
41    * @return NuGet sources configured from web\r
42    */\r
43   @NotNull\r
44   public Collection<String> getSources() {\r
45     return mySources;\r
46   }\r
47 \r
48   /**\r
49    *\r
50    * @return sorted list of packages that were used in project\r
51    */\r
52   @NotNull\r
53   public Collection<PackageInfo> getPackages() {\r
54     return myPackages;\r
55   }\r
56 \r
57   public boolean isEmpty() {\r
58     return getPackages().isEmpty();\r
59   }\r
60 \r
61   @Override\r
62   public String toString() {\r
63     return "PackageDependencies{" +\r
64             "mySources=" + mySources +\r
65             ", myPackages=" + myPackages +\r
66             '}';\r
67   }\r
68 }\r