mirror of https://github.com/icedream/npsharp.git
				
				
				
			Some code cleanup
							parent
							
								
									301281737c
								
							
						
					
					
						commit
						f43f20522f
					
				|  | @ -16,8 +16,8 @@ namespace NPSharp | ||||||
|     { |     { | ||||||
|         private readonly List<NPServerClient> _clients; |         private readonly List<NPServerClient> _clients; | ||||||
|         private readonly ILog _log; |         private readonly ILog _log; | ||||||
|         private readonly Socket _socket; |  | ||||||
|         private readonly ushort _port; |         private readonly ushort _port; | ||||||
|  |         private readonly Socket _socket; | ||||||
| 
 | 
 | ||||||
|         /// <summary> |         /// <summary> | ||||||
|         ///     Constructs a new NP server. |         ///     Constructs a new NP server. | ||||||
|  | @ -31,6 +31,34 @@ namespace NPSharp | ||||||
|             _port = port; |             _port = port; | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|  |         /// <summary> | ||||||
|  |         ///     The handler to use for file requests to this NP server. | ||||||
|  |         /// </summary> | ||||||
|  |         public IFileServingHandler FileServingHandler { get; set; } | ||||||
|  | 
 | ||||||
|  |         /// <summary> | ||||||
|  |         ///     The handler to use for user avatar requests to this NP server. | ||||||
|  |         /// </summary> | ||||||
|  |         public IUserAvatarHandler UserAvatarHandler { get; set; } | ||||||
|  | 
 | ||||||
|  |         /// <summary> | ||||||
|  |         ///     Returns all currently connected clients | ||||||
|  |         /// </summary> | ||||||
|  |         public NPServerClient[] Clients | ||||||
|  |         { | ||||||
|  |             get { return _clients.ToArray(); } // Avoid race condition by IEnum changes | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|  |         /// <summary> | ||||||
|  |         ///     The handler to use for authentication requests to this NP server. | ||||||
|  |         /// </summary> | ||||||
|  |         public IAuthenticationHandler AuthenticationHandler { get; set; } | ||||||
|  | 
 | ||||||
|  |         /// <summary> | ||||||
|  |         ///     The handler to use for friends-related requests to this NP server. | ||||||
|  |         /// </summary> | ||||||
|  |         public IFriendsHandler FriendsHandler { get; set; } | ||||||
|  | 
 | ||||||
|         /// <summary> |         /// <summary> | ||||||
|         ///     Starts up the NP server. |         ///     Starts up the NP server. | ||||||
|         /// </summary> |         /// </summary> | ||||||
|  | @ -89,34 +117,6 @@ namespace NPSharp | ||||||
|             _socket.Shutdown(SocketShutdown.Both); |             _socket.Shutdown(SocketShutdown.Both); | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         /// <summary> |  | ||||||
|         ///     The handler to use for file requests to this NP server. |  | ||||||
|         /// </summary> |  | ||||||
|         public IFileServingHandler FileServingHandler { get; set; } |  | ||||||
| 
 |  | ||||||
|         /// <summary> |  | ||||||
|         ///     The handler to use for user avatar requests to this NP server. |  | ||||||
|         /// </summary> |  | ||||||
|         public IUserAvatarHandler UserAvatarHandler { get; set; } |  | ||||||
| 
 |  | ||||||
|         /// <summary> |  | ||||||
|         ///     Returns all currently connected clients |  | ||||||
|         /// </summary> |  | ||||||
|         public NPServerClient[] Clients |  | ||||||
|         { |  | ||||||
|             get { return _clients.ToArray(); } // Avoid race condition by IEnum changes |  | ||||||
|         } |  | ||||||
| 
 |  | ||||||
|         /// <summary> |  | ||||||
|         ///     The handler to use for authentication requests to this NP server. |  | ||||||
|         /// </summary> |  | ||||||
|         public IAuthenticationHandler AuthenticationHandler { get; set; } |  | ||||||
| 
 |  | ||||||
|         /// <summary> |  | ||||||
|         ///     The handler to use for friends-related requests to this NP server. |  | ||||||
|         /// </summary> |  | ||||||
|         public IFriendsHandler FriendsHandler { get; set; } |  | ||||||
| 
 |  | ||||||
|         internal void _handleClient(NPServerClient client) |         internal void _handleClient(NPServerClient client) | ||||||
|         { |         { | ||||||
|             _log.Debug("Client now being handled"); |             _log.Debug("Client now being handled"); | ||||||
|  | @ -233,7 +233,7 @@ namespace NPSharp | ||||||
|                 // Send authentication result directly to client |                 // Send authentication result directly to client | ||||||
|                 client.RPC.Send(new AuthenticateResultMessage |                 client.RPC.Send(new AuthenticateResultMessage | ||||||
|                 { |                 { | ||||||
|                     NPID = result.UserID == null ? 0 : result.UserID.AccountID, |                     NPID = result.UserID == null ? 0 : result.UserID.ConvertToUint64(), | ||||||
|                     Result = result.Result ? 0 : 1, |                     Result = result.Result ? 0 : 1, | ||||||
|                     SessionToken = msg.Token |                     SessionToken = msg.Token | ||||||
|                 }); |                 }); | ||||||
|  |  | ||||||
|  | @ -26,7 +26,8 @@ namespace NPSharp | ||||||
| 
 | 
 | ||||||
|         public IEnumerable<FriendDetails> Friends |         public IEnumerable<FriendDetails> Friends | ||||||
|         { |         { | ||||||
|             get { |             get | ||||||
|  |             { | ||||||
|                 return NP.FriendsHandler == null |                 return NP.FriendsHandler == null | ||||||
|                     ? new FriendDetails[0] |                     ? new FriendDetails[0] | ||||||
|                     : NP.FriendsHandler.GetFriends(this).ToArray(); |                     : NP.FriendsHandler.GetFriends(this).ToArray(); | ||||||
|  |  | ||||||
|  | @ -1,5 +1,4 @@ | ||||||
| using System; | using System.Diagnostics; | ||||||
| using System.Diagnostics; |  | ||||||
| using System.IO; | using System.IO; | ||||||
| using System.Linq; | using System.Linq; | ||||||
| using System.Net; | using System.Net; | ||||||
|  | @ -127,7 +126,7 @@ namespace NPSharp.RPC.Messages | ||||||
|             Log.DebugFormat("{3}[ID={0},Type={1},TypeName={2}] {{", mid, message.GetTypeId(), message.GetType().Name, |             Log.DebugFormat("{3}[ID={0},Type={1},TypeName={2}] {{", mid, message.GetTypeId(), message.GetType().Name, | ||||||
|                 typeof (T).Name); |                 typeof (T).Name); | ||||||
|             foreach ( |             foreach ( | ||||||
|                 PropertyInfo prop in |                 var prop in | ||||||
|                     message.GetType().GetProperties().Where(p => !(p.DeclaringType == typeof (RPCServerMessage)))) |                     message.GetType().GetProperties().Where(p => !(p.DeclaringType == typeof (RPCServerMessage)))) | ||||||
|             { |             { | ||||||
|                 Log.DebugFormat("\t{0} = {1}", prop.Name, prop.GetValue(message)); |                 Log.DebugFormat("\t{0} = {1}", prop.Name, prop.GetValue(message)); | ||||||
|  | @ -168,7 +167,7 @@ namespace NPSharp.RPC.Messages | ||||||
| #if DEBUG | #if DEBUG | ||||||
|             Log.DebugFormat("{3}[ID={0},Type={1},TypeName={2}] {{", MessageId, GetTypeId(), GetType().Name, |             Log.DebugFormat("{3}[ID={0},Type={1},TypeName={2}] {{", MessageId, GetTypeId(), GetType().Name, | ||||||
|                 GetType().Name); |                 GetType().Name); | ||||||
|             foreach (PropertyInfo prop in GetType().GetProperties()) |             foreach (var prop in GetType().GetProperties()) | ||||||
|             { |             { | ||||||
|                 Log.DebugFormat("\t{0} = {1}", prop.Name, prop.GetValue(this)); |                 Log.DebugFormat("\t{0} = {1}", prop.Name, prop.GetValue(this)); | ||||||
|             } |             } | ||||||
|  |  | ||||||
|  | @ -100,7 +100,7 @@ namespace NPSharp.RPC | ||||||
|             TypeCallbacks.Add( |             TypeCallbacks.Add( | ||||||
|                 new KeyValuePair<uint, Action<TRecv>>( |                 new KeyValuePair<uint, Action<TRecv>>( | ||||||
|                     ((PacketAttribute) typeof (T).GetCustomAttributes(typeof (PacketAttribute), false).Single()).Type, |                     ((PacketAttribute) typeof (T).GetCustomAttributes(typeof (PacketAttribute), false).Single()).Type, | ||||||
|                     msg => callback.Invoke((T)msg))); |                     msg => callback.Invoke((T) msg))); | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         /// <summary> |         /// <summary> | ||||||
|  | @ -134,7 +134,7 @@ namespace NPSharp.RPC | ||||||
|             if (message.MessageId == default(uint)) |             if (message.MessageId == default(uint)) | ||||||
|                 message.MessageId = MessageID; |                 message.MessageId = MessageID; | ||||||
| 
 | 
 | ||||||
|             byte[] buffer = message.Serialize(); |             var buffer = message.Serialize(); | ||||||
| 
 | 
 | ||||||
|             _sock.Send(buffer); |             _sock.Send(buffer); | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -15,15 +15,13 @@ namespace NPSharp.CommandLine.Server | ||||||
|             _db = database; |             _db = database; | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|         ~BrightstarDatabaseFileServingHandler() |  | ||||||
|         { |  | ||||||
|             _db.Dispose(); |  | ||||||
|         } |  | ||||||
| 
 |  | ||||||
|         public byte[] ReadUserFile(NPServerClient client, string file) |         public byte[] ReadUserFile(NPServerClient client, string file) | ||||||
|         { |         { | ||||||
|             var resultEnum = |             var resultEnum = | ||||||
|                 _db.UserFiles.Where(uf => uf.User.Id == client.UserID.AccountID.ToString(CultureInfo.InvariantCulture) && uf.FileName == file); |                 _db.UserFiles.Where( | ||||||
|  |                     uf => | ||||||
|  |                         uf.User.Id == client.UserID.AccountID.ToString(CultureInfo.InvariantCulture) && | ||||||
|  |                         uf.FileName == file); | ||||||
| 
 | 
 | ||||||
|             return resultEnum.Any() ? resultEnum.Single().FileData : null; |             return resultEnum.Any() ? resultEnum.Single().FileData : null; | ||||||
|         } |         } | ||||||
|  | @ -39,7 +37,11 @@ namespace NPSharp.CommandLine.Server | ||||||
|         public void WriteUserFile(NPServerClient client, string file, byte[] data) |         public void WriteUserFile(NPServerClient client, string file, byte[] data) | ||||||
|         { |         { | ||||||
|             var resultEnum = |             var resultEnum = | ||||||
|                 _db.UserFiles.Where(uf => uf.User.Id == client.UserID.AccountID.ToString(CultureInfo.InvariantCulture) && uf.FileName == file); |                 _db.UserFiles.Where( | ||||||
|  |                     uf => | ||||||
|  |                         uf.User.Id == client.UserID.AccountID.ToString(CultureInfo.InvariantCulture) && | ||||||
|  |                         uf.FileName == file) | ||||||
|  |                         .ToArray(); | ||||||
| 
 | 
 | ||||||
|             var userFile = resultEnum.Any() ? resultEnum.Single() : _db.UserFiles.Create(); |             var userFile = resultEnum.Any() ? resultEnum.Single() : _db.UserFiles.Create(); | ||||||
|             userFile.FileName = file; |             userFile.FileName = file; | ||||||
|  | @ -49,6 +51,11 @@ namespace NPSharp.CommandLine.Server | ||||||
|             _db.SaveChanges(); |             _db.SaveChanges(); | ||||||
|         } |         } | ||||||
| 
 | 
 | ||||||
|  |         ~BrightstarDatabaseFileServingHandler() | ||||||
|  |         { | ||||||
|  |             _db.Dispose(); | ||||||
|  |         } | ||||||
|  | 
 | ||||||
|         protected byte[] GetDefaultUserFile(string file) |         protected byte[] GetDefaultUserFile(string file) | ||||||
|         { |         { | ||||||
|             switch (file) |             switch (file) | ||||||
|  |  | ||||||
|  | @ -1,9 +1,4 @@ | ||||||
| using System; | using BrightstarDB.EntityFramework; | ||||||
| using System.Collections.Generic; |  | ||||||
| using System.Linq; |  | ||||||
| using System.Security.Cryptography.X509Certificates; |  | ||||||
| using System.Text; |  | ||||||
| using BrightstarDB.EntityFramework; |  | ||||||
| 
 | 
 | ||||||
| namespace NPSharp.CommandLine.Server.Database | namespace NPSharp.CommandLine.Server.Database | ||||||
| { | { | ||||||
|  |  | ||||||
|  | @ -7,7 +7,6 @@ namespace NPSharp.CommandLine.Server.Database | ||||||
|     [Entity] |     [Entity] | ||||||
|     public interface IUser |     public interface IUser | ||||||
|     { |     { | ||||||
|         [Identifier("http://npserver.icedream.kthx.at/users/")] |  | ||||||
|         string Id { get; } |         string Id { get; } | ||||||
| 
 | 
 | ||||||
|         string UserName { get; set; } |         string UserName { get; set; } | ||||||
|  |  | ||||||
|  | @ -1,5 +1,4 @@ | ||||||
| using System; | using System; | ||||||
| using System.Globalization; |  | ||||||
| using System.Linq; | using System.Linq; | ||||||
| using System.Threading; | using System.Threading; | ||||||
| using System.Threading.Tasks; | using System.Threading.Tasks; | ||||||
|  | @ -89,9 +88,8 @@ namespace NPSharp.CommandLine.Server | ||||||
|                             _log.DebugFormat("Ban {0} became invalid", ban.Id); |                             _log.DebugFormat("Ban {0} became invalid", ban.Id); | ||||||
|                             dbForCleanup.DeleteObject(ban); |                             dbForCleanup.DeleteObject(ban); | ||||||
|                         } |                         } | ||||||
|                         foreach ( | 
 | ||||||
|                             var cheatDetection in |                         foreach (var cheatDetection in dbForCleanup.CheatDetections.Where(s => s.ExpiryTime < DateTime.Now).ToArray()) | ||||||
|                                 dbForCleanup.CheatDetections.Where(s => s.ExpiryTime < DateTime.Now).ToArray()) |  | ||||||
|                         { |                         { | ||||||
|                             _log.DebugFormat("Cheat detection {0} became invalid", cheatDetection.Id); |                             _log.DebugFormat("Cheat detection {0} became invalid", cheatDetection.Id); | ||||||
|                             dbForCleanup.DeleteObject(cheatDetection); |                             dbForCleanup.DeleteObject(cheatDetection); | ||||||
|  | @ -212,8 +210,7 @@ namespace NPSharp.CommandLine.Server | ||||||
|                     { |                     { | ||||||
|                         appender, |                         appender, | ||||||
|                         new DebugAppender {Layout = appender.Layout, Threshold = Level.All} |                         new DebugAppender {Layout = appender.Layout, Threshold = Level.All} | ||||||
|                     } |                     }); | ||||||
|                     ); |  | ||||||
|             } |             } | ||||||
|             else |             else | ||||||
|             { |             { | ||||||
|  | @ -232,8 +229,7 @@ namespace NPSharp.CommandLine.Server | ||||||
|                     { |                     { | ||||||
|                         Level = Level.Debug, |                         Level = Level.Debug, | ||||||
|                         ForeColor = ColoredConsoleAppender.Colors.Cyan | ColoredConsoleAppender.Colors.HighIntensity |                         ForeColor = ColoredConsoleAppender.Colors.Cyan | ColoredConsoleAppender.Colors.HighIntensity | ||||||
|                     } |                     }); | ||||||
|                     ); |  | ||||||
|                 appender.AddMapping( |                 appender.AddMapping( | ||||||
|                     new ColoredConsoleAppender.LevelColors |                     new ColoredConsoleAppender.LevelColors | ||||||
|                     { |                     { | ||||||
|  | @ -249,8 +245,7 @@ namespace NPSharp.CommandLine.Server | ||||||
|                         Level = Level.Warn, |                         Level = Level.Warn, | ||||||
|                         ForeColor = |                         ForeColor = | ||||||
|                             ColoredConsoleAppender.Colors.Purple | ColoredConsoleAppender.Colors.HighIntensity |                             ColoredConsoleAppender.Colors.Purple | ColoredConsoleAppender.Colors.HighIntensity | ||||||
|                     } |                     }); | ||||||
|                     ); |  | ||||||
| 
 | 
 | ||||||
|                 appender.AddMapping( |                 appender.AddMapping( | ||||||
|                     new ColoredConsoleAppender.LevelColors |                     new ColoredConsoleAppender.LevelColors | ||||||
|  | @ -266,8 +261,7 @@ namespace NPSharp.CommandLine.Server | ||||||
|                         ForeColor = |                         ForeColor = | ||||||
|                             ColoredConsoleAppender.Colors.White | ColoredConsoleAppender.Colors.HighIntensity, |                             ColoredConsoleAppender.Colors.White | ColoredConsoleAppender.Colors.HighIntensity, | ||||||
|                         BackColor = ColoredConsoleAppender.Colors.Red |                         BackColor = ColoredConsoleAppender.Colors.Red | ||||||
|                     } |                     }); | ||||||
|                     ); |  | ||||||
| 
 | 
 | ||||||
|                 appender.ActivateOptions(); |                 appender.ActivateOptions(); | ||||||
|                 BasicConfigurator.Configure( |                 BasicConfigurator.Configure( | ||||||
|  | @ -275,8 +269,7 @@ namespace NPSharp.CommandLine.Server | ||||||
|                     { |                     { | ||||||
|                         appender, |                         appender, | ||||||
|                         new DebugAppender {Layout = appender.Layout, Threshold = Level.All} |                         new DebugAppender {Layout = appender.Layout, Threshold = Level.All} | ||||||
|                     } |                     }); | ||||||
|                     ); |  | ||||||
|             } |             } | ||||||
| 
 | 
 | ||||||
|             _log = LogManager.GetLogger("Main"); |             _log = LogManager.GetLogger("Main"); | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue