Flutter Engine
The Flutter Engine
ExecutableFile.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 * A description of an executable file.
28 *
29 * @coverage dart.server.generated.types
30 */
31@SuppressWarnings("unused")
32public class ExecutableFile {
33
34 public static final ExecutableFile[] EMPTY_ARRAY = new ExecutableFile[0];
35
36 public static final List<ExecutableFile> EMPTY_LIST = Lists.newArrayList();
37
38 /**
39 * The path of the executable file.
40 */
41 private final String file;
42
43 /**
44 * The kind of the executable file.
45 */
46 private final String kind;
47
48 /**
49 * Constructor for {@link ExecutableFile}.
50 */
51 public ExecutableFile(String file, String kind) {
52 this.file = file;
53 this.kind = kind;
54 }
55
56 @Override
57 public boolean equals(Object obj) {
58 if (obj instanceof ExecutableFile) {
59 ExecutableFile other = (ExecutableFile) obj;
60 return
61 ObjectUtilities.equals(other.file, file) &&
62 ObjectUtilities.equals(other.kind, kind);
63 }
64 return false;
65 }
66
67 public static ExecutableFile fromJson(JsonObject jsonObject) {
68 String file = jsonObject.get("file").getAsString();
69 String kind = jsonObject.get("kind").getAsString();
70 return new ExecutableFile(file, kind);
71 }
72
73 public static List<ExecutableFile> fromJsonArray(JsonArray jsonArray) {
74 if (jsonArray == null) {
75 return EMPTY_LIST;
76 }
77 ArrayList<ExecutableFile> list = new ArrayList<ExecutableFile>(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 path of the executable file.
87 */
88 public String getFile() {
89 return file;
90 }
91
92 /**
93 * The kind of the executable file.
94 */
95 public String getKind() {
96 return kind;
97 }
98
99 @Override
100 public int hashCode() {
101 HashCodeBuilder builder = new HashCodeBuilder();
102 builder.append(file);
103 builder.append(kind);
104 return builder.toHashCode();
105 }
106
107 public JsonObject toJson() {
108 JsonObject jsonObject = new JsonObject();
109 jsonObject.addProperty("file", file);
110 jsonObject.addProperty("kind", kind);
111 return jsonObject;
112 }
113
114 @Override
115 public String toString() {
116 StringBuilder builder = new StringBuilder();
117 builder.append("[");
118 builder.append("file=");
119 builder.append(file + ", ");
120 builder.append("kind=");
121 builder.append(kind);
122 builder.append("]");
123 return builder.toString();
124 }
125
126}
static ExecutableFile fromJson(JsonObject jsonObject)
static List< ExecutableFile > fromJsonArray(JsonArray jsonArray)