Skip to content

Commit 1420037

Browse files
committed
2015-05-14
Refining command logging into output window. Syntax highlighting of string (partial solution) Fixing SqlStatement TokenIterator Adding 'Check for updates' menu item Enhancing AboutForm Cleaning code
1 parent 879f7e4 commit 1420037

File tree

56 files changed

+963
-719
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+963
-719
lines changed

DataCommander.Foundation/Collections/IndexableCollection/EnumerableIndex.cs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
public sealed class EnumerableIndex<T> : ICollectionIndex<T>
1313
{
1414
private readonly string name;
15-
private IEnumerable<T> enumerable;
15+
private readonly IEnumerable<T> enumerable;
1616

1717
/// <summary>
1818
///
@@ -37,53 +37,53 @@ string ICollectionIndex<T>.Name
3737

3838
void ICollection<T>.Add(T item)
3939
{
40-
throw new NotImplementedException();
40+
throw new NotSupportedException();
4141
}
4242

4343
void ICollection<T>.Clear()
4444
{
45-
throw new NotImplementedException();
45+
throw new NotSupportedException();
4646
}
4747

4848
bool ICollection<T>.Contains(T item)
4949
{
50-
throw new NotImplementedException();
50+
throw new NotSupportedException();
5151
}
5252

5353
void ICollection<T>.CopyTo(T[] array, int arrayIndex)
5454
{
55-
throw new NotImplementedException();
55+
throw new NotSupportedException();
5656
}
5757

5858
int ICollection<T>.Count
5959
{
6060
get
6161
{
62-
throw new NotImplementedException();
62+
throw new NotSupportedException();
6363
}
6464
}
6565

6666
bool ICollection<T>.IsReadOnly
6767
{
6868
get
6969
{
70-
throw new NotImplementedException();
70+
return true;
7171
}
7272
}
7373

7474
bool ICollection<T>.Remove(T item)
7575
{
76-
throw new NotImplementedException();
76+
throw new NotSupportedException();
7777
}
7878

7979
IEnumerator<T> IEnumerable<T>.GetEnumerator()
8080
{
81-
throw new NotImplementedException();
81+
return this.enumerable.GetEnumerator();
8282
}
8383

8484
IEnumerator IEnumerable.GetEnumerator()
8585
{
86-
throw new NotImplementedException();
86+
return this.enumerable.GetEnumerator();
8787
}
8888
}
8989
}

DataCommander.Foundation/Collections/IndexableCollection/ReversedComparer.cs

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,12 @@
99
/// <typeparam name="T"></typeparam>
1010
public sealed class ReversedComparer<T> : IComparer<T>
1111
{
12-
private static readonly Lazy<ReversedComparer<T>> Instance = new Lazy<ReversedComparer<T>>( CreateReversedComparer );
12+
private static readonly Lazy<ReversedComparer<T>> instance =
13+
new Lazy<ReversedComparer<T>>(CreateReversedComparer);
14+
1315
private readonly IComparer<T> comparer;
1416

15-
private ReversedComparer( IComparer<T> comparer )
17+
private ReversedComparer(IComparer<T> comparer)
1618
{
1719
this.comparer = comparer;
1820
}
@@ -24,23 +26,23 @@ public static IComparer<T> Default
2426
{
2527
get
2628
{
27-
return Instance.Value;
29+
return instance.Value;
2830
}
2931
}
3032

3133
#region IComparer<T> Members
3234

33-
int IComparer<T>.Compare( T x, T y )
35+
int IComparer<T>.Compare(T x, T y)
3436
{
35-
return this.comparer.Compare( y, x );
37+
return this.comparer.Compare(y, x);
3638
}
3739

3840
#endregion
3941

4042
private static ReversedComparer<T> CreateReversedComparer()
4143
{
4244
var comparer = Comparer<T>.Default;
43-
return new ReversedComparer<T>( comparer );
45+
return new ReversedComparer<T>(comparer);
4446
}
4547
}
4648
}

DataCommander.Foundation/Configuration/Convert.cs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@ public static object ParseNumber(
1717
switch (typeCode)
1818
{
1919
case TypeCode.SByte:
20-
value = SByte.Parse(source, style);
20+
value = sbyte.Parse(source, style);
2121
break;
2222

2323
case TypeCode.Int16:
24-
value = Int16.Parse(source, style);
24+
value = short.Parse(source, style);
2525
break;
2626

2727
case TypeCode.Int32:
@@ -37,15 +37,15 @@ public static object ParseNumber(
3737
break;
3838

3939
case TypeCode.UInt16:
40-
value = UInt16.Parse(source, style, CultureInfo.InvariantCulture);
40+
value = ushort.Parse(source, style, CultureInfo.InvariantCulture);
4141
break;
4242

4343
case TypeCode.UInt32:
44-
value = UInt32.Parse(source, style, CultureInfo.InvariantCulture);
44+
value = uint.Parse(source, style, CultureInfo.InvariantCulture);
4545
break;
4646

4747
case TypeCode.UInt64:
48-
value = UInt64.Parse(source, style);
48+
value = ulong.Parse(source, style);
4949
break;
5050

5151
default:

DataCommander.Foundation/Data/SqlClient/SqlErrorExtensions.cs

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,25 @@ public static string ToLogString(this SqlError error)
2020
Contract.Requires<ArgumentNullException>(error != null);
2121

2222
var sb = new StringBuilder();
23-
sb.AppendFormat("Server: Msg {0}, Level {1}, State {2}", error.Number, error.Class, error.State);
2423

25-
if (!string.IsNullOrEmpty(error.Procedure))
24+
bool hasProcedure = !string.IsNullOrEmpty(error.Procedure);
25+
26+
if (error.Number == 0 && error.Class == 0 && error.State == 1 && !hasProcedure)
27+
{
28+
sb.AppendFormat("[Server: Line {0}] ", error.LineNumber);
29+
}
30+
else
2631
{
27-
sb.AppendFormat(", Procedure: {0}", error.Procedure);
32+
sb.AppendFormat("[Server: Msg {0}, Level {1}, State {2}", error.Number, error.Class, error.State);
33+
34+
if (hasProcedure)
35+
{
36+
sb.AppendFormat(", Procedure: {0}", error.Procedure);
37+
}
38+
39+
sb.AppendFormat(", Line {0}] ", error.LineNumber);
2840
}
2941

30-
sb.AppendFormat(", Line {0}\r\n", error.LineNumber);
3142
sb.Append(error.Message);
3243
return sb.ToString();
3344
}

DataCommander.Foundation/Diagnostics/Log/ILogFactoryExtensions.cs

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,12 @@ public static class ILogFactoryExtensions
1414
/// </summary>
1515
/// <param name="applicationLog"></param>
1616
/// <returns></returns>
17-
public static ILog GetCurrentTypeLog( this ILogFactory applicationLog )
17+
public static ILog GetCurrentTypeLog(this ILogFactory applicationLog)
1818
{
19-
var stackFrame = new StackFrame( 1, false );
19+
var stackFrame = new StackFrame(1, false);
2020
Type type = stackFrame.GetMethod().DeclaringType;
2121
string name = type.FullName;
22-
var log = applicationLog.GetLog( name );
22+
var log = applicationLog.GetLog(name);
2323
var foundationLog = log as FoundationLog;
2424
if (foundationLog != null)
2525
{
@@ -35,16 +35,16 @@ public static ILog GetCurrentTypeLog( this ILogFactory applicationLog )
3535
/// <param name="applicationLog"></param>
3636
/// <param name="sectionName"></param>
3737
/// <returns></returns>
38-
public static ILog GetCurrentTypeSectionLog( this ILogFactory applicationLog, string sectionName )
38+
public static ILog GetCurrentTypeSectionLog(this ILogFactory applicationLog, string sectionName)
3939
{
40-
var stackFrame = new StackFrame( 1, false );
40+
var stackFrame = new StackFrame(1, false);
4141
Type type = stackFrame.GetMethod().DeclaringType;
42-
string name = string.Format( "{0}.{1}", type.FullName, sectionName );
43-
var log = applicationLog.GetLog( name );
42+
string name = string.Format("{0}.{1}", type.FullName, sectionName);
43+
var log = applicationLog.GetLog(name);
4444
var foundationLog = log as FoundationLog;
4545
if (foundationLog != null)
4646
{
47-
foundationLog.LoggedName = string.Format( "{0}.{1}", type.Name, sectionName );
47+
foundationLog.LoggedName = string.Format("{0}.{1}", type.Name, sectionName);
4848
}
4949

5050
return log;
@@ -56,52 +56,52 @@ public static ILog GetCurrentTypeSectionLog( this ILogFactory applicationLog, st
5656
/// <param name="applicationLog"></param>
5757
/// <param name="parameters"></param>
5858
/// <returns></returns>
59-
public static ILog GetCurrentMethodLog( this ILogFactory applicationLog, params object[] parameters )
59+
public static ILog GetCurrentMethodLog(this ILogFactory applicationLog, params object[] parameters)
6060
{
61-
var stackFrame = new StackFrame( 1, false );
61+
var stackFrame = new StackFrame(1, false);
6262
var method = stackFrame.GetMethod();
6363
Type type = method.DeclaringType;
64-
string name = string.Format( "{0}.{1}", type.FullName, method.Name );
65-
var log = applicationLog.GetLog( name );
64+
string name = string.Format("{0}.{1}", type.FullName, method.Name);
65+
var log = applicationLog.GetLog(name);
6666
var foundationLog = log as FoundationLog;
6767
if (foundationLog != null)
6868
{
69-
foundationLog.LoggedName = string.Format( "{0}.{1}", type.Name, method.Name );
69+
foundationLog.LoggedName = string.Format("{0}.{1}", type.Name, method.Name);
7070
}
7171

7272
if (parameters.Length > 0)
7373
{
7474
var parameterInfos = method.GetParameters();
7575
var sb = new StringBuilder();
76-
sb.AppendFormat( "Entering method {0}(", method.Name );
77-
int count = Math.Min( parameterInfos.Length, parameters.Length );
76+
sb.AppendFormat("Entering method {0}(", method.Name);
77+
int count = Math.Min(parameterInfos.Length, parameters.Length);
7878

7979
for (int i = 0; i < count; i++)
8080
{
81-
var parameterInfo = parameterInfos[ i ];
82-
sb.AppendFormat( "\r\n{0} {1}", parameterInfo.ParameterType.Name, parameterInfo.Name );
81+
var parameterInfo = parameterInfos[i];
82+
sb.AppendFormat("\r\n{0} {1}", parameterInfo.ParameterType.Name, parameterInfo.Name);
8383
if (i < parameters.Length)
8484
{
85-
sb.Append( " = " );
86-
string parameterString = ParameterValueToString( parameters[ i ] );
87-
sb.Append( parameterString );
85+
sb.Append(" = ");
86+
string parameterString = ParameterValueToString(parameters[i]);
87+
sb.Append(parameterString);
8888
}
8989

9090
if (i < count - 1)
9191
{
92-
sb.Append( ',' );
92+
sb.Append(',');
9393
}
9494
}
9595

96-
sb.Append( ')' );
96+
sb.Append(')');
9797
string message = sb.ToString();
98-
log.Trace( message );
98+
log.Trace(message);
9999
}
100100

101101
return log;
102102
}
103103

104-
private static string ParameterValueToString( object value )
104+
private static string ParameterValueToString(object value)
105105
{
106106
string parameterString;
107107
if (value != null)
@@ -124,4 +124,4 @@ private static string ParameterValueToString( object value )
124124
return parameterString;
125125
}
126126
}
127-
}
127+
}

DataCommander.Foundation/IO/AsyncTextWriter.cs

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
namespace DataCommander.Foundation.IO
22
{
3+
using System;
34
using System.Collections.Generic;
45
using System.Diagnostics.Contracts;
56
using System.IO;
@@ -27,7 +28,7 @@ public class AsyncTextWriter
2728
/// <param name="textWriter"></param>
2829
public AsyncTextWriter(TextWriter textWriter)
2930
{
30-
Contract.Requires(textWriter != null);
31+
Contract.Requires<ArgumentNullException>(textWriter != null);
3132

3233
this.textWriter = textWriter;
3334
}
@@ -47,7 +48,7 @@ private void Flush()
4748
this.list.Clear();
4849
}
4950

50-
for (int i = 0;i < items.Length;i++)
51+
for (int i = 0; i < items.Length; i++)
5152
{
5253
items[i].AppendTo(sb);
5354
}
@@ -90,14 +91,15 @@ private void Write(AsyncTextWriterListItem item)
9091
this.list.Add(item);
9192
}
9293

93-
const int timeout = 10000;// 10 seconds
94+
const int timeout = 10000; // 10 seconds
9495

9596
lock (this.syncObject)
9697
{
9798
if (this.registeredWaitHandle == null)
9899
{
99100
// log.Write("ThreadPool.RegisterWaitForSingleObject",LogLevel.Trace);
100-
this.registeredWaitHandle = ThreadPool.RegisterWaitForSingleObject(this.waitHandle, this.Callback, null, timeout, false);
101+
this.registeredWaitHandle = ThreadPool.RegisterWaitForSingleObject(this.waitHandle, this.Callback,
102+
null, timeout, false);
101103
}
102104
}
103105
}
@@ -108,7 +110,7 @@ private void Write(AsyncTextWriterListItem item)
108110
/// <param name="value"></param>
109111
public void Write(string value)
110112
{
111-
AsyncTextWriterListItem item = new AsyncTextWriterListItem(DefaultFormatter.Instance, value);
113+
var item = new AsyncTextWriterListItem(DefaultFormatter.Instance, value);
112114
this.Write(item);
113115
}
114116

@@ -119,7 +121,7 @@ public void Write(string value)
119121
/// <param name="args"></param>
120122
public void Write(IFormatter formatter, params object[] args)
121123
{
122-
AsyncTextWriterListItem item = new AsyncTextWriterListItem(formatter, args);
124+
var item = new AsyncTextWriterListItem(formatter, args);
123125
this.Write(item);
124126
}
125127

DataCommander.Foundation/IO/DefaultFormatter.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@ public static DefaultFormatter Instance
1414
}
1515
}
1616

17-
void IFormatter.AppendTo( StringBuilder sb, object[] args )
17+
void IFormatter.AppendTo(StringBuilder sb, object[] args)
1818
{
19-
sb.Append( args[ 0 ] );
19+
sb.Append(args[0]);
2020
}
2121
}
2222
}

0 commit comments

Comments
 (0)