blob: 33fc0f42162795ed1dd280b86a6d11ce6e9d4496 [file] [log] [blame]
// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
/// Logic to combine all the ._buildLog.* logs into one ._buildLog file.
library polymer.src.build.log_combiner;
import 'dart:async';
import 'package:barback/barback.dart';
import 'package:code_transformers/messages/build_logger.dart';
import 'common.dart';
/// Logic to combine all the ._buildLog.* logs into one ._buildLog file.
class BuildLogCombiner extends Transformer with PolymerTransformer {
final TransformOptions options;
BuildLogCombiner(this.options);
/// Run only on entry point html files and only if
/// options.injectBuildLogsInOutput is true.
bool isPrimary(idOrAsset) {
if (!options.injectBuildLogsInOutput) return false;
var id = idOrAsset is AssetId ? idOrAsset : idOrAsset.id;
return options.isHtmlEntryPoint(id);
}
Future apply(Transform transform) {
// Combine all ._buildLogs* files into one ._buildLogs file.
return BuildLogger.combineLogFiles(transform);
}
}