Design Patterns - Singleton Pattern

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DesignPattern_Singleton
   class Program
      static void Main(string[] args)
         /* The program will first check if there is an instance of LogManager
         * if there is one, then it will continue to use the instance
         * else it will create a new instance and call the private method 
         * "LogManager"
         * private "LogManager" method will create one text file 
         * with a unique name
         * and "WriteLog" will write the log message to the file 
         * which was created by the LogManager
         LogManager.Instance.WriteLog("SINGLETON PATTERN TEST MESSAGE");

   public class LogManager
      private static LogManager instance;
      private FileStream fileStream;
      private StreamWriter streamWriter;

      public static LogManager Instance
            if (instance == null)
            instance = new LogManager();

            return instance;

      private LogManager()
         string fileName = Environment.CurrentDirectory + "\\ApplicationLog_" + Guid.NewGuid() + ".txt";
         fileStream = File.OpenWrite(fileName);

         streamWriter = new StreamWriter(fileStream);

      public void WriteLog(string logMessage)
         StringBuilder message = new StringBuilder();
         message.AppendLine("Date: " + DateTime.Now.ToString()+" -- Message: "+logMessage);



Popular posts from this blog

Solution for the fault: "System.Diagnostics.Process.Start is not working on IIS, but working on ASP.NET Development Server"

Solution for "Can not obtain Oracle client information from registry"