import 'common.dart';
import 'constants.dart';
import 'skiaperf.dart';
class FlutterEngineMetricPoint extends MetricPoint {
FlutterEngineMetricPoint(
String name,
double value,
String gitRevision, {
Map<String, String> moreTags = const <String, String>{},
}) : super(
value,
<String, String>{
kNameKey: name,
kGithubRepoKey: kFlutterEngineRepo,
kGitRevisionKey: gitRevision,
}..addAll(moreTags),
);
}
class FlutterDestination extends MetricDestination {
FlutterDestination._(this._skiaPerfDestination);
static Future<FlutterDestination> makeFromCredentialsJson(
Map<String, dynamic> json, {
bool isTesting = false,
}) async {
final SkiaPerfDestination skiaPerfDestination =
await SkiaPerfDestination.makeFromGcpCredentials(
json,
isTesting: isTesting,
);
return FlutterDestination._(skiaPerfDestination);
}
static Future<FlutterDestination> makeFromAccessToken(
String accessToken,
String projectId, {
bool isTesting = false,
}) async {
final SkiaPerfDestination skiaPerfDestination =
await SkiaPerfDestination.makeFromAccessToken(
accessToken,
projectId,
isTesting: isTesting,
);
return FlutterDestination._(skiaPerfDestination);
}
@override
Future<void> update(
List<MetricPoint> points,
DateTime commitTime,
String taskName,
) async {
await _skiaPerfDestination.update(points, commitTime, taskName);
}
final SkiaPerfDestination _skiaPerfDestination;
}