View Javadoc

1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements.  See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership.  The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License.  You may obtain a copy of the License at
9    *
10   *     http://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing, software
13   * distributed under the License is distributed on an "AS IS" BASIS,
14   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15   * See the License for the specific language governing permissions and
16   * limitations under the License.
17   */
18  
19  package org.apache.giraph.job;
20  
21  import com.facebook.swift.service.ThriftMethod;
22  import com.facebook.swift.service.ThriftService;
23  import org.apache.giraph.worker.WorkerProgress;
24  
25  /**
26   * Interface for job progress tracker on job client
27   */
28  @ThriftService
29  public interface JobProgressTracker {
30  
31    /** Notify JobProgressTracker that mapper started */
32    @ThriftMethod
33    void mapperStarted();
34  
35    /**
36     * Call this when you want to log an info line from any mapper to command line
37     *
38     * @param logLine Line to log
39     */
40    @ThriftMethod
41    void logInfo(String logLine);
42  
43    /**
44     * Call this when you want to log an error line from any mapper to command
45     * line
46     *
47     * @param logLine Line to log
48     */
49    @ThriftMethod
50    void logError(String logLine);
51  
52    /**
53     * Notify that job is failing
54     *
55     * @param reason Reason for failure
56     */
57    @ThriftMethod
58    void logFailure(String reason);
59  
60    /**
61     * Workers should call this method to update their progress
62     *
63     * @param workerProgress Progress of the worker
64     */
65    @ThriftMethod
66    void updateProgress(WorkerProgress workerProgress);
67  }
68