1*b1cdbd2cSJim Jagielski /**************************************************************
2*b1cdbd2cSJim Jagielski  *
3*b1cdbd2cSJim Jagielski  * Licensed to the Apache Software Foundation (ASF) under one
4*b1cdbd2cSJim Jagielski  * or more contributor license agreements.  See the NOTICE file
5*b1cdbd2cSJim Jagielski  * distributed with this work for additional information
6*b1cdbd2cSJim Jagielski  * regarding copyright ownership.  The ASF licenses this file
7*b1cdbd2cSJim Jagielski  * to you under the Apache License, Version 2.0 (the
8*b1cdbd2cSJim Jagielski  * "License"); you may not use this file except in compliance
9*b1cdbd2cSJim Jagielski  * with the License.  You may obtain a copy of the License at
10*b1cdbd2cSJim Jagielski  *
11*b1cdbd2cSJim Jagielski  *   http://www.apache.org/licenses/LICENSE-2.0
12*b1cdbd2cSJim Jagielski  *
13*b1cdbd2cSJim Jagielski  * Unless required by applicable law or agreed to in writing,
14*b1cdbd2cSJim Jagielski  * software distributed under the License is distributed on an
15*b1cdbd2cSJim Jagielski  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*b1cdbd2cSJim Jagielski  * KIND, either express or implied.  See the License for the
17*b1cdbd2cSJim Jagielski  * specific language governing permissions and limitations
18*b1cdbd2cSJim Jagielski  * under the License.
19*b1cdbd2cSJim Jagielski  *
20*b1cdbd2cSJim Jagielski  *************************************************************/
21*b1cdbd2cSJim Jagielski 
22*b1cdbd2cSJim Jagielski 
23*b1cdbd2cSJim Jagielski 
24*b1cdbd2cSJim Jagielski package convwatch;
25*b1cdbd2cSJim Jagielski 
26*b1cdbd2cSJim Jagielski public class StatusHelper
27*b1cdbd2cSJim Jagielski {
28*b1cdbd2cSJim Jagielski     final static public int DIFF_NOT_REALLY_INITIALISED =            1;
29*b1cdbd2cSJim Jagielski     final static public int DIFF_NO_DIFFERENCES =                    2;
30*b1cdbd2cSJim Jagielski     final static public int DIFF_DIFFERENCES_FOUND =                 3;
31*b1cdbd2cSJim Jagielski     final static public int DIFF_AFTER_MOVE_DONE_NO_PROBLEMS =       4;
32*b1cdbd2cSJim Jagielski     final static public int DIFF_AFTER_MOVE_DONE_DIFFERENCES_FOUND = 5;
33*b1cdbd2cSJim Jagielski 
34*b1cdbd2cSJim Jagielski     // public String m_sOutputPath;
35*b1cdbd2cSJim Jagielski     public String m_sMainName;
36*b1cdbd2cSJim Jagielski 
37*b1cdbd2cSJim Jagielski     public String m_sOldGfx;
38*b1cdbd2cSJim Jagielski     public String m_sNewGfx;
39*b1cdbd2cSJim Jagielski     public String m_sDiffGfx;
40*b1cdbd2cSJim Jagielski     public int nDiffStatus = DIFF_NOT_REALLY_INITIALISED;
41*b1cdbd2cSJim Jagielski     public int nPercent = 0;
42*b1cdbd2cSJim Jagielski 
43*b1cdbd2cSJim Jagielski     // BorderMove Values
44*b1cdbd2cSJim Jagielski     public int nPercent2 = 0;
45*b1cdbd2cSJim Jagielski     public String m_sOld_BM_Gfx;
46*b1cdbd2cSJim Jagielski     public String m_sNew_BM_Gfx;
47*b1cdbd2cSJim Jagielski     public String m_sDiff_BM_Gfx;
48*b1cdbd2cSJim Jagielski 
StatusHelper(String _sOldGfx, String _sNewGfx, String _sDiffGfx)49*b1cdbd2cSJim Jagielski     public StatusHelper(String _sOldGfx, String _sNewGfx, String _sDiffGfx)
50*b1cdbd2cSJim Jagielski         {
51*b1cdbd2cSJim Jagielski             m_sOldGfx = _sOldGfx;
52*b1cdbd2cSJim Jagielski             m_sNewGfx = _sNewGfx;
53*b1cdbd2cSJim Jagielski             m_sDiffGfx = _sDiffGfx;
54*b1cdbd2cSJim Jagielski         }
setFilesForBorderMove(String _sOldGfx, String _sNewGfx, String _sDiffGfx)55*b1cdbd2cSJim Jagielski     public void setFilesForBorderMove(String _sOldGfx, String _sNewGfx, String _sDiffGfx)
56*b1cdbd2cSJim Jagielski         {
57*b1cdbd2cSJim Jagielski             m_sOld_BM_Gfx = _sOldGfx;
58*b1cdbd2cSJim Jagielski             m_sNew_BM_Gfx = _sNewGfx;
59*b1cdbd2cSJim Jagielski             m_sDiff_BM_Gfx = _sDiffGfx;
60*b1cdbd2cSJim Jagielski 
61*b1cdbd2cSJim Jagielski         }
62*b1cdbd2cSJim Jagielski 
printStatus()63*b1cdbd2cSJim Jagielski     public void printStatus()
64*b1cdbd2cSJim Jagielski         {
65*b1cdbd2cSJim Jagielski             GlobalLogWriter.get().println("  Original file: " + m_sOldGfx);
66*b1cdbd2cSJim Jagielski             GlobalLogWriter.get().println("       New file: " + m_sNewGfx);
67*b1cdbd2cSJim Jagielski             GlobalLogWriter.get().println("Difference file: " + m_sDiffGfx);
68*b1cdbd2cSJim Jagielski             if (nDiffStatus == DIFF_NOT_REALLY_INITIALISED)
69*b1cdbd2cSJim Jagielski             {
70*b1cdbd2cSJim Jagielski                 GlobalLogWriter.get().println("Early problem, may be the files doesn't exist.");
71*b1cdbd2cSJim Jagielski             }
72*b1cdbd2cSJim Jagielski             else if (nDiffStatus == DIFF_NO_DIFFERENCES)
73*b1cdbd2cSJim Jagielski             {
74*b1cdbd2cSJim Jagielski                 GlobalLogWriter.get().println("No differences found, ok.");
75*b1cdbd2cSJim Jagielski             }
76*b1cdbd2cSJim Jagielski             else if (nDiffStatus == DIFF_DIFFERENCES_FOUND)
77*b1cdbd2cSJim Jagielski             {
78*b1cdbd2cSJim Jagielski                 GlobalLogWriter.get().println("Files differ by " + String.valueOf(nPercent) + "%");
79*b1cdbd2cSJim Jagielski             }
80*b1cdbd2cSJim Jagielski             else if (nDiffStatus == DIFF_AFTER_MOVE_DONE_NO_PROBLEMS)
81*b1cdbd2cSJim Jagielski             {
82*b1cdbd2cSJim Jagielski                 GlobalLogWriter.get().println("No differences found, after move picture.");
83*b1cdbd2cSJim Jagielski             }
84*b1cdbd2cSJim Jagielski             else if (nDiffStatus == DIFF_AFTER_MOVE_DONE_DIFFERENCES_FOUND)
85*b1cdbd2cSJim Jagielski             {
86*b1cdbd2cSJim Jagielski                 GlobalLogWriter.get().println("A picture move is done, the files differ by " + String.valueOf(nPercent2) + " old was " + String.valueOf(nPercent) + "%");
87*b1cdbd2cSJim Jagielski             }
88*b1cdbd2cSJim Jagielski             else
89*b1cdbd2cSJim Jagielski             {
90*b1cdbd2cSJim Jagielski                 GlobalLogWriter.get().println("Unknown DIFF_ values used, not handles yet.");
91*b1cdbd2cSJim Jagielski             }
92*b1cdbd2cSJim Jagielski         }
93*b1cdbd2cSJim Jagielski 
94*b1cdbd2cSJim Jagielski 
95*b1cdbd2cSJim Jagielski 
96*b1cdbd2cSJim Jagielski 
97*b1cdbd2cSJim Jagielski 
98*b1cdbd2cSJim Jagielski //  TODO: stream output
99*b1cdbd2cSJim Jagielski //     public stream& statusline(stream)
100*b1cdbd2cSJim Jagielski //         {
101*b1cdbd2cSJim Jagielski //             stream << name << "PASS" << nDiff==0?"PASS":"FAIL" << endl;
102*b1cdbd2cSJim Jagielski //             return stream;
103*b1cdbd2cSJim Jagielski //         }
104*b1cdbd2cSJim Jagielski }
105