Flutter Engine
The Flutter Engine
ExistingImports.java
Go to the documentation of this file.
1/*
2 * Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file
3 * for details. All rights reserved. Use of this source code is governed by a
4 * BSD-style license that can be found in the LICENSE file.
5 *
6 * This file has been automatically generated. Please do not edit it manually.
7 * To regenerate the file, use the script "pkg/analysis_server/tool/spec/generate_files".
8 */
9package org.dartlang.analysis.server.protocol;
10
11import java.util.Arrays;
12import java.util.List;
13import java.util.Map;
14import com.google.common.collect.Lists;
15import com.google.dart.server.utilities.general.JsonUtilities;
16import com.google.dart.server.utilities.general.ObjectUtilities;
17import com.google.gson.JsonArray;
18import com.google.gson.JsonElement;
19import com.google.gson.JsonObject;
20import com.google.gson.JsonPrimitive;
21import org.apache.commons.lang3.builder.HashCodeBuilder;
22import java.util.ArrayList;
23import java.util.Iterator;
24import org.apache.commons.lang3.StringUtils;
25
26/**
27 * Information about all existing imports in a library.
28 *
29 * @coverage dart.server.generated.types
30 */
31@SuppressWarnings("unused")
32public class ExistingImports {
33
34 public static final ExistingImports[] EMPTY_ARRAY = new ExistingImports[0];
35
36 public static final List<ExistingImports> EMPTY_LIST = Lists.newArrayList();
37
38 /**
39 * The set of all unique imported elements for all imports.
40 */
41 private final ImportedElementSet elements;
42
43 /**
44 * The list of imports in the library.
45 */
46 private final List<ExistingImport> imports;
47
48 /**
49 * Constructor for {@link ExistingImports}.
50 */
52 this.elements = elements;
53 this.imports = imports;
54 }
55
56 @Override
57 public boolean equals(Object obj) {
58 if (obj instanceof ExistingImports) {
59 ExistingImports other = (ExistingImports) obj;
60 return
61 ObjectUtilities.equals(other.elements, elements) &&
62 ObjectUtilities.equals(other.imports, imports);
63 }
64 return false;
65 }
66
67 public static ExistingImports fromJson(JsonObject jsonObject) {
68 ImportedElementSet elements = ImportedElementSet.fromJson(jsonObject.get("elements").getAsJsonObject());
69 List<ExistingImport> imports = ExistingImport.fromJsonArray(jsonObject.get("imports").getAsJsonArray());
70 return new ExistingImports(elements, imports);
71 }
72
73 public static List<ExistingImports> fromJsonArray(JsonArray jsonArray) {
74 if (jsonArray == null) {
75 return EMPTY_LIST;
76 }
77 ArrayList<ExistingImports> list = new ArrayList<ExistingImports>(jsonArray.size());
78 Iterator<JsonElement> iterator = jsonArray.iterator();
79 while (iterator.hasNext()) {
80 list.add(fromJson(iterator.next().getAsJsonObject()));
81 }
82 return list;
83 }
84
85 /**
86 * The set of all unique imported elements for all imports.
87 */
89 return elements;
90 }
91
92 /**
93 * The list of imports in the library.
94 */
96 return imports;
97 }
98
99 @Override
100 public int hashCode() {
101 HashCodeBuilder builder = new HashCodeBuilder();
102 builder.append(elements);
103 builder.append(imports);
104 return builder.toHashCode();
105 }
106
107 public JsonObject toJson() {
108 JsonObject jsonObject = new JsonObject();
109 jsonObject.add("elements", elements.toJson());
110 JsonArray jsonArrayImports = new JsonArray();
111 for (ExistingImport elt : imports) {
112 jsonArrayImports.add(elt.toJson());
113 }
114 jsonObject.add("imports", jsonArrayImports);
115 return jsonObject;
116 }
117
118 @Override
119 public String toString() {
120 StringBuilder builder = new StringBuilder();
121 builder.append("[");
122 builder.append("elements=");
123 builder.append(elements + ", ");
124 builder.append("imports=");
125 builder.append(StringUtils.join(imports, ", "));
126 builder.append("]");
127 return builder.toString();
128 }
129
130}
static List< ExistingImport > fromJsonArray(JsonArray jsonArray)
static ExistingImports fromJson(JsonObject jsonObject)
static List< ExistingImports > fromJsonArray(JsonArray jsonArray)
ExistingImports(ImportedElementSet elements, List< ExistingImport > imports)
static ImportedElementSet fromJson(JsonObject jsonObject)