aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/listener/BigProjectLogger.java
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/listener/BigProjectLogger.java')
-rw-r--r--framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/listener/BigProjectLogger.java194
1 files changed, 0 insertions, 194 deletions
diff --git a/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/listener/BigProjectLogger.java b/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/listener/BigProjectLogger.java
deleted file mode 100644
index 865127d2..00000000
--- a/framework/src/ant/apache-ant-1.9.6/src/main/org/apache/tools/ant/listener/BigProjectLogger.java
+++ /dev/null
@@ -1,194 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-package org.apache.tools.ant.listener;
-
-import java.io.File;
-
-import org.apache.tools.ant.BuildEvent;
-import org.apache.tools.ant.Project;
-import org.apache.tools.ant.SubBuildListener;
-import org.apache.tools.ant.util.StringUtils;
-
-/**
- * This is a special logger that is designed to make it easier to work
- * with big projects, those that use imports and
- * subant to build complex systems.
- *
- * @since Ant1.7.1
- */
-
-public class BigProjectLogger extends SimpleBigProjectLogger
- implements SubBuildListener {
-
- private volatile boolean subBuildStartedRaised = false;
- private final Object subBuildLock = new Object();
-
- /**
- * Header string for the log.
- * {@value}
- */
- public static final String HEADER
- = "======================================================================";
- /**
- * Footer string for the log.
- * {@value}
- */
- public static final String FOOTER = HEADER;
-
- /**
- * This is an override point: the message that indicates whether
- * a build failed. Subclasses can change/enhance the
- * message.
- *
- * @return The classic "BUILD FAILED" plus a timestamp
- */
- protected String getBuildFailedMessage() {
- return super.getBuildFailedMessage() + TimestampedLogger.SPACER + getTimestamp();
- }
-
- /**
- * This is an override point: the message that indicates that
- * a build succeeded. Subclasses can change/enhance the
- * message.
- *
- * @return The classic "BUILD SUCCESSFUL" plus a timestamp
- */
- protected String getBuildSuccessfulMessage() {
- return super.getBuildSuccessfulMessage() + TimestampedLogger.SPACER + getTimestamp();
- }
-
- /**
- * {@inheritDoc}
- *
- * @param event
- */
- public void targetStarted(BuildEvent event) {
- maybeRaiseSubBuildStarted(event);
- super.targetStarted(event);
- }
-
- /**
- * {@inheritDoc}
- *
- * @param event
- */
- public void taskStarted(BuildEvent event) {
- maybeRaiseSubBuildStarted(event);
- super.taskStarted(event);
- }
-
- /**
- * {@inheritDoc}
- *
- * @param event
- */
- public void buildFinished(BuildEvent event) {
- maybeRaiseSubBuildStarted(event);
- subBuildFinished(event);
- super.buildFinished(event);
- }
-
- /**
- * {@inheritDoc}
- *
- * @param event
- */
- public void messageLogged(BuildEvent event) {
- maybeRaiseSubBuildStarted(event);
- super.messageLogged(event);
- }
-
-
- /**
- * {@inheritDoc}
- *
- * @param event An event with any relevant extra information. Must not be <code>null</code>.
- */
- public void subBuildStarted(BuildEvent event) {
- String name = extractNameOrDefault(event);
- Project project = event.getProject();
-
- File base = project == null ? null : project.getBaseDir();
- String path =
- (base == null)
- ? "With no base directory"
- : "In " + base.getAbsolutePath();
- printMessage(StringUtils.LINE_SEP + getHeader()
- + StringUtils.LINE_SEP + "Entering project " + name
- + StringUtils.LINE_SEP + path
- + StringUtils.LINE_SEP + getFooter(),
- out,
- event.getPriority());
- }
-
- /**
- * Get the name of an event
- *
- * @param event the event name
- * @return the name or a default string
- */
- protected String extractNameOrDefault(BuildEvent event) {
- String name = extractProjectName(event);
- if (name == null) {
- name = "";
- } else {
- name = '"' + name + '"';
- }
- return name;
- }
-
- /** {@inheritDoc} */
- public void subBuildFinished(BuildEvent event) {
- String name = extractNameOrDefault(event);
- String failed = event.getException() != null ? "failing " : "";
- printMessage(StringUtils.LINE_SEP + getHeader()
- + StringUtils.LINE_SEP + "Exiting " + failed + "project "
- + name
- + StringUtils.LINE_SEP + getFooter(),
- out,
- event.getPriority());
- }
-
- /**
- * Override point: return the header string for the entry/exit message
- * @return the header string
- */
- protected String getHeader() {
- return HEADER;
- }
-
- /**
- * Override point: return the footer string for the entry/exit message
- * @return the footer string
- */
- protected String getFooter() {
- return FOOTER;
- }
-
- private void maybeRaiseSubBuildStarted(BuildEvent event) {
- // double checked locking should be OK since the flag is write-once
- if (!subBuildStartedRaised) {
- synchronized (subBuildLock) {
- if (!subBuildStartedRaised) {
- subBuildStartedRaised = true;
- subBuildStarted(event);
- }
- }
- }
- }
-}