15165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll/*
25165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll * Copyright (C) 2011 The Android Open Source Project
35165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll *
45165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll * Licensed under the Apache License, Version 2.0 (the "License");
55165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll * you may not use this file except in compliance with the License.
65165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll * You may obtain a copy of the License at
75165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll *
85165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll *      http://www.apache.org/licenses/LICENSE-2.0
95165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll *
105165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll * Unless required by applicable law or agreed to in writing, software
115165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll * distributed under the License is distributed on an "AS IS" BASIS,
125165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
135165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll * See the License for the specific language governing permissions and
145165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll * limitations under the License.
155165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll */
165165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll
175165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Mollpackage com.android.sdkuilib.internal.tasks;
185165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll
195165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll
205165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll/**
215165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll * Interface for a user interface that displays the log from a task monitor.
225165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll */
235165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Mollpublic interface ILogUiProvider {
245165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll
255165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll    /**
265165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll     * Sets the description in the current task dialog.
275165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll     * This method can be invoked from a non-UI thread.
285165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll     */
295165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll    public abstract void setDescription(String description);
305165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll
315165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll    /**
325165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll     * Logs a "normal" information line.
335165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll     * This method can be invoked from a non-UI thread.
345165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll     */
355165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll    public abstract void log(String log);
365165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll
375165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll    /**
385165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll     * Logs an "error" information line.
395165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll     * This method can be invoked from a non-UI thread.
405165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll     */
415165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll    public abstract void logError(String log);
425165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll
435165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll    /**
445165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll     * Logs a "verbose" information line, that is extra details which are typically
455165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll     * not that useful for the end-user and might be hidden until explicitly shown.
465165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll     * This method can be invoked from a non-UI thread.
475165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll     */
485165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll    public abstract void logVerbose(String log);
495165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll
505165ba6e0bba257d8f3be175c02d57281f4faff6Raphael Moll}
51