public TextDisplayer(int?id, string filename, bool splited = false) : base(id)
        {
            _splited = splited;

            ppFormatter       = RtppFormatter.GetPPFormatter();
            hitCountFormatter = RtppFormatter.GetHitCountFormatter();
            if (ppFormatter != null)
            {
                ppFormatter.Displayer = this;
            }
            if (hitCountFormatter != null)
            {
                hitCountFormatter.Displayer = this;
            }

            if (!Path.IsPathRooted(filename))
            {
                _filenames[0] = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, filename);
            }
            else
            {
                _filenames[0] = filename;
            }

            if (_splited)
            {
                string ext  = Path.GetExtension(_filenames[0]);
                string path = Path.GetDirectoryName(_filenames[0]);
                string file = Path.GetFileNameWithoutExtension(_filenames[0]);
                _filenames[0] = $"{path}{Path.DirectorySeparatorChar}{file}-pp{ext}";
                _filenames[1] = $"{path}{Path.DirectorySeparatorChar}{file}-hit{ext}";
            }
            Clear();//Create File
        }
        /// <summary>
        /// 添加消息
        /// </summary>
        private void Add(FormatterBase formatter)
        {
            string result = formatter.Format();

            if (string.IsNullOrWhiteSpace(result))
            {
                return;
            }
            Result.AddLine("{0}. {1}", Line++, result);
        }
        public object GetFormatedHitCount()
        {
            List <RestfulDisplayer> displayers = EnumerateRestfulDisplayers();
            string format = FormatterBase.GetHitCountFormatter().Format;

            return(new
            {
                count = displayers.Count,
                list = displayers.Select(d => format)
            });
        }
Example #4
0
        public void Format_ShouldThrowNotImplementedException()
        {
            var fb = new FormatterBase();

            Assert.Throws <NotImplementedException>(() => fb.Format(string.Empty));
        }
Example #5
0
 public ApiServer()
 {
     Formatter = new NotSupportFormatter();
     Formatter = ObjectContainer.Current.Resolve <FormatterBase>(ProtocalType.ToString());
 }
Example #6
0
 public WpfDisplayer(int?id) : base(id)
 {
     ppFormatter       = FormatterBase.GetPPFormatter();
     hitCountFormatter = FormatterBase.GetHitCountFormatter();
     Initialize();
 }
Example #7
0
 public WpfDisplayer(int?id, FormatterBase ppFmt, FormatterBase hitFmt) : base(id)
 {
     ppFormatter       = ppFmt;
     hitCountFormatter = hitFmt;
     Initialize();
 }
Example #8
0
 /// <summary>
 /// 添加消息
 /// </summary>
 private void Add( FormatterBase formatter ) {
     string result = formatter.Format();
     if ( string.IsNullOrWhiteSpace( result ) )
         return;
     Result.AddLine( "{0}. {1}", Line++, result );
 }
 public RemoteService()
 {
     this.ParamProvider = new ParamProvider();
     this.Formatter     = new JsonFormatter();
 }
        public object GetFormatedHitCount(int id)
        {
            RestfulDisplayer displayer = GetDisplayer(id);

            return(FormatterBase.GetHitCountFormatter().Format);
        }
        public object GetFormatedPP(int id)
        {
            RestfulDisplayer displayer = GetDisplayer(id);

            return(FormatterBase.GetPPFormatter().Format);
        }