Files
flipper/android/plugins/inspector/SearchResultNode.java
Daniel Büchele fbbf8cf16b Initial commit 🎉
fbshipit-source-id: b6fc29740c6875d2e78953b8a7123890a67930f2
Co-authored-by: Sebastian McKenzie <sebmck@fb.com>
Co-authored-by: John Knox <jknox@fb.com>
Co-authored-by: Emil Sjölander <emilsj@fb.com>
Co-authored-by: Pritesh Nandgaonkar <prit91@fb.com>
2018-06-01 11:03:58 +01:00

52 lines
1.3 KiB
Java

/*
* Copyright (c) 2018-present, Facebook, Inc.
*
* This source code is licensed under the MIT license found in the LICENSE
* file in the root directory of this source tree.
*
*/
package com.facebook.sonar.plugins.inspector;
import android.support.annotation.Nullable;
import com.facebook.sonar.core.SonarArray;
import com.facebook.sonar.core.SonarObject;
import java.util.List;
public class SearchResultNode {
private final String id;
private final boolean isMatch;
private final SonarObject element;
@Nullable
private final List<SearchResultNode> children;
SearchResultNode(
String id, boolean isMatch, SonarObject element, @Nullable List<SearchResultNode> children) {
this.id = id;
this.isMatch = isMatch;
this.element = element;
this.children = children;
}
SonarObject toSonarObject() {
final SonarArray childArray;
if (children != null) {
final SonarArray.Builder builder = new SonarArray.Builder();
for (SearchResultNode child : children) {
builder.put(child.toSonarObject());
}
childArray = builder.build();
} else {
childArray = null;
}
return new SonarObject.Builder()
.put("id", this.id)
.put("isMatch", this.isMatch)
.put("element", this.element)
.put("children", childArray)
.build();
}
}