author | Jussi Ryoma <ext-jussi.s.ryoma@nokia.com> |
Wed, 21 Apr 2010 09:51:02 +0300 | |
changeset 2 | 0c91f0baec58 |
parent 0 | 818e61de6cd1 |
child 3 | 045ade241ef5 |
permissions | -rw-r--r-- |
0
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
1 |
/* |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
2 |
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
3 |
* All rights reserved. |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
4 |
* This component and the accompanying materials are made available |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
5 |
* under the terms of "Eclipse Public License v1.0" |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
6 |
* which accompanies this distribution, and is available |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
7 |
* at the URL "http://www.eclipse.org/legal/epl-v10.html". |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
8 |
* |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
9 |
* Initial Contributors: |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
10 |
* Nokia Corporation - initial contribution. |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
11 |
* |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
12 |
* Contributors: |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
13 |
* |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
14 |
* Description: |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
15 |
* |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
16 |
*/ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
17 |
using System; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
18 |
using System.Text; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
19 |
using System.IO; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
20 |
using System.Reflection; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
21 |
using System.Collections.Generic; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
22 |
using SymbianUtils.Tracer; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
23 |
using CrashItemLib.Engine; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
24 |
using CrashItemLib.Crash; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
25 |
using CrashItemLib.Crash.Container; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
26 |
using CrashItemLib.PluginAPI; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
27 |
using SymbianUtils.FileSystem.Utilities; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
28 |
using SymbianXmlInputLib.Parser; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
29 |
using SymbianXmlInputLib.Parser.Nodes; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
30 |
using SymbianXmlInputLib.Elements; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
31 |
using SymbianXmlInputLib.Elements.Types.Category; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
32 |
using SymbianXmlInputLib.Elements.Types.Extension; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
33 |
using SymbianXmlInputLib.Elements.Types.FileSystem; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
34 |
using SymbianXmlInputLib.Elements.Types.Command; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
35 |
using CrashItemLib.Sink; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
36 |
using System.Text.RegularExpressions; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
37 |
using System.Globalization; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
38 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
39 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
40 |
namespace CrashAnalyserServerExe.Engine |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
41 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
42 |
internal class CACmdLineInputParameters |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
43 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
44 |
#region Constructors |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
45 |
public CACmdLineInputParameters( ITracer aTracer ) |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
46 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
47 |
iTracer = aTracer; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
48 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
49 |
Assembly myAssembly = System.Reflection.Assembly.GetExecutingAssembly(); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
50 |
iAppPath = Path.GetDirectoryName( myAssembly.Location ); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
51 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
52 |
// CHECKME: |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
53 |
// Source files are identified from command line current working directory. |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
54 |
DirectoryInfo sourceDir = new DirectoryInfo( Environment.CurrentDirectory ); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
55 |
iSources.AddRange( sourceDir.GetFiles( "*.bin", SearchOption.TopDirectoryOnly ) ); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
56 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
57 |
// CHECKME: |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
58 |
// Read selge.ini from tool directory or CWD |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
59 |
FindDebugMetaDataFile( KDebugMetaDataFileSelgeIni ); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
60 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
61 |
// CHECKME: |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
62 |
// Read selge_event.ini from tool directory or CWD |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
63 |
FindDebugMetaDataFile( KDebugMetaDataFileSelgeEventIni ); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
64 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
65 |
// Sink parameters are fairly simple |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
66 |
Version version = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
67 |
string commandLine = System.Environment.CommandLine; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
68 |
iSinkParams = new CISinkSerializationParameters( version, commandLine ); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
69 |
iSinkParams.DetailLevel = CISinkSerializationParameters.TDetailLevel.EFull; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
70 |
iSinkParams.FileExtensionFailed = ".corrupt_ci"; |
2
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
71 |
iSinkParams.FileExtensionSuccess = ".ci"; |
0
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
72 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
73 |
// CHECKME: |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
74 |
// The output data is written to the same directory as the input file. |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
75 |
iSinkParams.OutputDirectory = sourceDir; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
76 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
77 |
#endregion |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
78 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
79 |
#region Command line parsing |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
80 |
public bool ParseCommandLine() |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
81 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
82 |
bool retval = true; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
83 |
string commandLine = System.Environment.CommandLine; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
84 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
85 |
string ppattern = @"\s*(-.\s*[^-]*)"; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
86 |
MatchCollection matches = Regex.Matches(commandLine, ppattern, RegexOptions.None); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
87 |
if (matches.Count < 1) |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
88 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
89 |
PrintCommandHelp(); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
90 |
System.Console.WriteLine("Error: No valid parameters given"); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
91 |
throw new CACmdLineException("Error: No valid parameters given", CACmdLineException.KErrCommandLineError); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
92 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
93 |
foreach (Match parameter in matches) |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
94 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
95 |
Regex pparser = new Regex(@"(?<id>-.)\s*(?<content>.*)"); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
96 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
97 |
Match m = pparser.Match(parameter.ToString()); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
98 |
if (m.Success) |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
99 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
100 |
GroupCollection groups = m.Groups; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
101 |
string paramId = m.Result("${id}").Trim(); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
102 |
string paramContent = m.Result("${content}").Trim(); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
103 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
104 |
if (paramId == "-a") |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
105 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
106 |
ArchivePath = paramContent; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
107 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
108 |
if (paramId == "-s") |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
109 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
110 |
SkippedPath = paramContent; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
111 |
ErrorPath = paramContent + @"\errors"; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
112 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
113 |
if (paramId == "-f") |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
114 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
115 |
DecodeWithoutSymbols = true; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
116 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
117 |
if (paramId == "-t") |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
118 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
119 |
TestWithoutMovingFiles = true; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
120 |
} |
2
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
121 |
if (paramId == "-x") |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
122 |
{ |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
123 |
UseXmlSink = true; |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
124 |
} |
0
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
125 |
|
2
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
126 |
if (paramId == "-c") |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
127 |
{ |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
128 |
CITargetPath = paramContent; |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
129 |
System.Console.WriteLine("CITargetPath -c is " +CITargetPath); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
130 |
} |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
131 |
|
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
132 |
// Plain text output |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
133 |
if (paramId == "-p") |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
134 |
{ |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
135 |
UseXmlSink = true; // XML sink is used for plain text output |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
136 |
iSinkParams.PlainTextOutput = true; |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
137 |
} |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
138 |
|
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
139 |
// Crash files |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
140 |
if (paramId == "-b") |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
141 |
{ |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
142 |
FileInfo fi = new FileInfo(paramContent); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
143 |
CACmdLineFSEntityList<CACmdLineFileSource> fileList = new CACmdLineFSEntityList<CACmdLineFileSource>(); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
144 |
|
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
145 |
if (fi.Exists) |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
146 |
{ |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
147 |
fileList.Add(fi); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
148 |
} |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
149 |
else |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
150 |
{ |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
151 |
System.Console.WriteLine("Error: Crash file " + fi.FullName + " does not exist"); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
152 |
retval = false; |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
153 |
} |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
154 |
iSources = fileList; |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
155 |
} |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
156 |
|
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
157 |
// Symbol/map/dictionary files |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
158 |
if (paramId == "-m") |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
159 |
{ |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
160 |
string[] symbolFileTable = paramContent.Split(','); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
161 |
CACmdLineFSEntityList<CACmdLineFSEntity> fileList = new CACmdLineFSEntityList<CACmdLineFSEntity>(); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
162 |
foreach (string fileName in symbolFileTable) |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
163 |
{ |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
164 |
FileInfo fi = new FileInfo(fileName); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
165 |
if(fi.Exists) |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
166 |
{ |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
167 |
fileList.Add(fi); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
168 |
} |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
169 |
} |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
170 |
|
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
171 |
iMetaData = fileList; |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
172 |
|
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
173 |
if (fileList.Count == 0) |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
174 |
{ |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
175 |
System.Console.WriteLine("Error: Invalid symbol/map/dictionary files: " + paramContent); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
176 |
retval = false; |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
177 |
} |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
178 |
} |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
179 |
|
0
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
180 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
181 |
else |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
182 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
183 |
System.Console.WriteLine("Error: No parameters found"); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
184 |
retval = false; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
185 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
186 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
187 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
188 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
189 |
//Parameter scanning finished - validate content |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
190 |
if (ArchivePath == string.Empty) |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
191 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
192 |
System.Console.WriteLine("Error: No archive path given"); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
193 |
retval = false; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
194 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
195 |
else if (!Directory.Exists(ArchivePath)) |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
196 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
197 |
System.Console.WriteLine("Error: Archive path " + ArchivePath +" cannot be found"); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
198 |
retval = false; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
199 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
200 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
201 |
if (SkippedPath == string.Empty) |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
202 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
203 |
System.Console.WriteLine("Error: No skipped file path given"); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
204 |
retval = false; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
205 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
206 |
else if (!Directory.Exists(SkippedPath)) |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
207 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
208 |
System.Console.WriteLine("Error: Skipped path " + SkippedPath + " cannot be found"); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
209 |
retval = false; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
210 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
211 |
else //skipped path exists, create error path if not there |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
212 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
213 |
if (!Directory.Exists(ErrorPath)) |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
214 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
215 |
Directory.CreateDirectory(ErrorPath); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
216 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
217 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
218 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
219 |
|
2
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
220 |
if (CITargetPath != string.Empty) |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
221 |
{ |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
222 |
CITargetPath = Path.GetFullPath(CITargetPath); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
223 |
System.Console.WriteLine("CITargetPath used! Resulting files will be created to " +CITargetPath); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
224 |
|
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
225 |
if (!Directory.Exists(CITargetPath)) |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
226 |
{ |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
227 |
Directory.CreateDirectory(CITargetPath); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
228 |
} |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
229 |
iSinkParams.OutputDirectory = new DirectoryInfo(CITargetPath); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
230 |
} |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
231 |
|
0
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
232 |
//make sure paths are absolute |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
233 |
iArchivePath = Path.GetFullPath(iArchivePath); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
234 |
iSkippedPath = Path.GetFullPath(iSkippedPath); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
235 |
iErrorPath = Path.GetFullPath(iErrorPath); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
236 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
237 |
//add weekly division |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
238 |
DateTime today = DateTime.Now; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
239 |
CultureInfo culInfo = CultureInfo.CurrentCulture; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
240 |
int weekNum = culInfo.Calendar.GetWeekOfYear(today, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
241 |
int year = culInfo.Calendar.GetYear(today); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
242 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
243 |
iArchivePath = iArchivePath + @"\" + year + "_" + weekNum.ToString().PadLeft(2, '0'); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
244 |
iSkippedPath = iSkippedPath + @"\" + year + "_" + weekNum.ToString().PadLeft(2, '0'); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
245 |
iErrorPath = iErrorPath + @"\" + year + "_" + weekNum.ToString().PadLeft(2, '0'); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
246 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
247 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
248 |
if (TestWithoutMovingFiles) |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
249 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
250 |
System.Console.WriteLine("Test mode parameter -t given: Not moving any files!" ); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
251 |
retval = true; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
252 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
253 |
else if (retval) //Archive & skipped directories exsits, clean up paths and add week numbers |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
254 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
255 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
256 |
if (!Directory.Exists(iArchivePath)) |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
257 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
258 |
Directory.CreateDirectory(iArchivePath); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
259 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
260 |
if (!Directory.Exists(iSkippedPath)) |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
261 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
262 |
Directory.CreateDirectory(iSkippedPath); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
263 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
264 |
if (!Directory.Exists(iErrorPath)) |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
265 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
266 |
Directory.CreateDirectory(iErrorPath); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
267 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
268 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
269 |
else |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
270 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
271 |
PrintCommandHelp(); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
272 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
273 |
System.Console.WriteLine("Using archive path " + ArchivePath + ", skipped path " + SkippedPath + " and error path " + ErrorPath); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
274 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
275 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
276 |
return retval; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
277 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
278 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
279 |
private void PrintCommandHelp() |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
280 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
281 |
System.Console.WriteLine("Command line parameters:"); |
2
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
282 |
System.Console.WriteLine("-a C:\\folderarchive\\ Location where to move files to permanent archive."); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
283 |
System.Console.WriteLine("-s C:\\folder\\skipped\\ Location where to put skipped files to wait reprocessing."); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
284 |
System.Console.WriteLine("-c C:\\folder\\output\\ Location where to put output files. Defaults to current working dir."); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
285 |
System.Console.WriteLine("-b crashfile.bin Crash file to be decoded."); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
286 |
System.Console.WriteLine("-m crash.symbol,crash.map Symbol/map/dictionary files."); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
287 |
System.Console.WriteLine("-f Force decoding even if files are without symbols."); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
288 |
System.Console.WriteLine("-t Test mode, will not move any files, ignores -a and -s."); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
289 |
System.Console.WriteLine("-x Prints output in Xml format"); |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
290 |
System.Console.WriteLine("-p Prints output in plain text format"); |
0
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
291 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
292 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
293 |
#endregion |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
294 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
295 |
#region API |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
296 |
#endregion |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
297 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
298 |
#region Properties |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
299 |
public CISinkSerializationParameters SinkParameters |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
300 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
301 |
get { return iSinkParams; } |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
302 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
303 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
304 |
public CACmdLineFSEntityList<CACmdLineFileSource> SourceFiles |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
305 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
306 |
get { return iSources; } |
2
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
307 |
set { iSources = value; } |
0
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
308 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
309 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
310 |
public CACmdLineFSEntityList<CACmdLineFSEntity> MetaDataFiles |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
311 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
312 |
get { return iMetaData; } |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
313 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
314 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
315 |
public string ArchivePath |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
316 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
317 |
get { return iArchivePath; } |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
318 |
set { iArchivePath = value; } |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
319 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
320 |
public string SkippedPath |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
321 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
322 |
get { return iSkippedPath; } |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
323 |
set { iSkippedPath = value; } |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
324 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
325 |
public string ErrorPath |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
326 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
327 |
get { return iErrorPath; } |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
328 |
set { iErrorPath = value; } |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
329 |
} |
2
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
330 |
public string CITargetPath |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
331 |
{ |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
332 |
get { return iCITargetPath; } |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
333 |
set { iCITargetPath = value; } |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
334 |
} |
0
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
335 |
public bool DecodeWithoutSymbols |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
336 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
337 |
get { return iDecodeWithoutSymbols; } |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
338 |
set { iDecodeWithoutSymbols = value; } |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
339 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
340 |
public bool TestWithoutMovingFiles |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
341 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
342 |
get { return iTestWithoutMovingFiles; } |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
343 |
set { iTestWithoutMovingFiles = value; } |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
344 |
} |
2
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
345 |
public bool UseXmlSink |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
346 |
{ |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
347 |
get { return iUseXmlSink; } |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
348 |
set { iUseXmlSink = value; } |
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
349 |
} |
0
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
350 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
351 |
#endregion |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
352 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
353 |
#region Internal constants |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
354 |
private const string KDebugMetaDataFileSelgeIni = "selge.ini"; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
355 |
private const string KDebugMetaDataFileSelgeEventIni = "selge_event.ini"; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
356 |
#endregion |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
357 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
358 |
#region Internal methods |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
359 |
private void FindDebugMetaDataFile( string aFileName ) |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
360 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
361 |
// First try current working directory, and if not, then try application path. |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
362 |
DirectoryInfo sourceDir = new DirectoryInfo( Environment.CurrentDirectory ); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
363 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
364 |
string fileName = Path.Combine( sourceDir.FullName, aFileName ); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
365 |
FileInfo file = new FileInfo( fileName ); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
366 |
if ( file.Exists ) |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
367 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
368 |
iMetaData.Add( file ); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
369 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
370 |
else |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
371 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
372 |
// Try app path |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
373 |
fileName = Path.Combine(iAppPath, aFileName); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
374 |
file = new FileInfo( fileName ); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
375 |
if ( file.Exists ) |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
376 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
377 |
iMetaData.Add( file ); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
378 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
379 |
else |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
380 |
{ |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
381 |
iTracer.Trace( "WARNING: Could not find debug meta data file: " + aFileName ); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
382 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
383 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
384 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
385 |
#endregion |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
386 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
387 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
388 |
#region Data members |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
389 |
private readonly ITracer iTracer; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
390 |
private readonly string iAppPath; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
391 |
private readonly CISinkSerializationParameters iSinkParams; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
392 |
private CACmdLineFSEntityList<CACmdLineFSEntity> iMetaData = new CACmdLineFSEntityList<CACmdLineFSEntity>(); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
393 |
private CACmdLineFSEntityList<CACmdLineFileSource> iSources = new CACmdLineFSEntityList<CACmdLineFileSource>(); |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
394 |
|
2
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
395 |
private string iCITargetPath = string.Empty; |
0
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
396 |
private string iArchivePath = string.Empty; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
397 |
private string iSkippedPath = string.Empty; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
398 |
private string iErrorPath = string.Empty; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
399 |
private bool iTestWithoutMovingFiles = false; |
2
0c91f0baec58
Source codes for command line version of Crash Analyser Carbide extension v1.3
Jussi Ryoma <ext-jussi.s.ryoma@nokia.com>
parents:
0
diff
changeset
|
400 |
private bool iUseXmlSink = false; |
0
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
401 |
private bool iDecodeWithoutSymbols = false; |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
402 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
403 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
404 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
405 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
406 |
|
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
407 |
#endregion |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
408 |
} |
818e61de6cd1
Add initial version of Crash Analyser cmdline under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
409 |
} |