Пример #1
0
        public bool CanReadWrite(Type type)
        {
            if (Writers.ContainsKey(type) && Readers.ContainsKey(type))
            {
                return(true);
            }

            if (CoveredTypeMap.ContainsKey(type))
            {
                return(true);
            }

            var t = CoveredTypes.Where(i => i.IsAssignableFrom(type));

            if (t.Any())
            {
                CoveredTypeMap[type] = t.First();
                return(true);
            }

            bool hasConstructor = type.GetConstructors().Any(i => i.GetParameters().Count() == 0);

            return((hasConstructor || type.IsValueType) ||
                   typeof(IEnumerable).IsAssignableFrom(type) ||
                   typeof(ICollection).IsAssignableFrom(type) ||
                   typeof(ISerializable).IsAssignableFrom(type) ||
                   type.IsEnum);
        }
Пример #2
0
        public void Write(DataBuffer buffer, Type type, object instance)
        {
            if (CanReadWrite(type) == false)
            {
                throw new Exception("Invalid model: Can not read/write");
            }

            DataWriter writer = null;

            lock (LockObject) {
                if (Writers.ContainsKey(type) == false)
                {
                    if (CoveredTypeMap.ContainsKey(type))
                    {
                        writer = Writers[CoveredTypeMap[type]];
                    }
                    else
                    {
                        Writers.Add(type, new DataWriter(this, type));
                    }
                }
            }

            if (writer == null)
            {
                writer = Writers[type];
            }

            writer.Write(buffer, instance);
        }
Пример #3
0
        public void AdditionShouldAllowNulls()
        {
            var hexFmt = Lift <int>(ToHexString);

            Assert.That(Writers.ToString(Add(hexFmt, null)(15)), Is.EqualTo("F"));
            Assert.That(Writers.ToString(Add(null, hexFmt)(15)), Is.EqualTo("F"));
        }
Пример #4
0
        public void AddingTwoNullFormattersShouldResultInEmptyFormatter()
        {
            var sum = Add <int>(null, null);

            Assert.That(sum, Is.Not.Null);
            Assert.That(Writers.ToString(sum(1)), Is.Empty);
        }
Пример #5
0
        private async void RemoveMultipleWriterButton_ClickHandler(object sender, RoutedEventArgs e)
        {
            try
            {
                IsBusy = true;

                int previousCount          = Writers.Count;
                List <IRunnable> runnables = Writers.Take(10).ToList();

                foreach (IRunnable runnable in runnables)
                {
                    await runnable.Stop().ConfigureAwait(false);

                    Writers.Remove(runnable);
                }

                Data.RecordSettingChange("Writer Count", previousCount, Writers.Count);
            }
            catch (Exception ex)
            {
                Data.Error("MainWindow", "Failed to stop multiple writers.", ex);
            }
            finally
            {
                IsBusy = false;
            }
        }
Пример #6
0
        private async void RemoveWriterButton_ClickHandler(object sender, RoutedEventArgs e)
        {
            try
            {
                IsBusy = true;

                int       previousCount = Writers.Count;
                IRunnable runnable      = Writers.FirstOrDefault();

                if (runnable != null)
                {
                    await runnable.Stop().ConfigureAwait(false);

                    Writers.Remove(runnable);

                    Data.RecordSettingChange("Writer Count", previousCount, Writers.Count);
                }
            }
            catch (Exception ex)
            {
                Data.Error("MainWindow", "Failed to stop writer.", ex);
            }
            finally
            {
                IsBusy = false;
            }
        }
Пример #7
0
        private async void AddMultipleWriterButton_ClickHandler(object sender, RoutedEventArgs e)
        {
            try
            {
                IsBusy = true;

                int previousCount = Writers.Count;

                for (int i = 0; i < 10; i++)
                {
                    IRunnable runnable = UseServiceBus ? (IRunnable) new ServiceBusWriter() : new EventHubsWriter();

                    if (!Settings.DisableRunning)
                    {
                        await runnable.Start().ConfigureAwait(false);
                    }

                    Writers.Add(runnable);
                }

                Data.RecordSettingChange("Writer Count", previousCount, Writers.Count);
            }
            catch (Exception ex)
            {
                Data.Error("MainWindow", "Failed to start multiple writers.", ex);
            }
            finally
            {
                IsBusy = false;
            }
        }
Пример #8
0
 public BaseActivityStreamBox(ActivityStreamFilter filter, IActivityStreamRepository ctx)
 {
     this.filter = filter;
     this.ctx    = ctx;
     //Writers.Add(new ObjectStreamWriter(File.Open(PathOf(null), FileMode.Append, FileAccess.Write, FileShare.Read), _serializer, ctx));
     Writers.Add(new ObjectIdStreamWriter(OpenWrite(filter.ToPath(null)), ctx));
 }
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            if ((string)Session["allow"] != "1")
            {
                Response.Redirect("/Pages/Forbidden.aspx");
            }
            else
            {
                if (Request["wid"] != null)
                {
                    CountriesDropDownList.DataSource     = Countries.GetAllCountries();
                    CountriesDropDownList.DataValueField = "CountryID";
                    CountriesDropDownList.DataTextField  = "Country";
                    CountriesDropDownList.DataBind();

                    Writer w1 = Writers.GetWriterByID(Request["wid"]);

                    FirstNameTextBox.Text = w1.GetFirstName();
                    LastNameTextBox.Text  = w1.GetLastName();
                    BornYearTextBox.Text  = w1.GetBornYear().ToString();
                    CountriesDropDownList.SelectedValue = w1.GetBornCountry().ToString();

                    WriterPhoto.ImageUrl = "/Pictures/Writers/" + w1.GetWriterPhoto();
                }
            }
        }
    }
Пример #10
0
        public async Task <IActionResult> GetWriter(string name = "")
        {
            Writers writer = new Writers();

            if (Request.Query.ContainsKey("name"))
            {
                name = (Request.Query.FirstOrDefault(p => p.Key == "name").Value);
            }
            using (LiteraryTourismContext db = new LiteraryTourismContext())
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }

                var writersdb = (from writers in db.Set <Writers>()
                                 where writers.Full_name.Contains(name)
                                 select writers).ToList();

                if (writersdb == null)
                {
                    return(NotFound());
                }

                return(Ok(writersdb));
            }
        }
Пример #11
0
        private void ClearGUI()
        {
            // Recommended for identification
            seriesTitle.Clear();
            seriesIMDB.Clear();
            seriesTVDB.Clear();
            seasonIndex.Clear();
            episodeIndexList.Clear();
            episodeAired.Clear();

            // additional series infos
            seriesFirstAired.Clear();
            seriesSummary.Clear();
            seriesGenre.Clear();
            seriesActors.Clear();
            Certification.Clear();
            Network.Clear();
            seriesKeywords.Clear();
            // additional episode infos
            episodeIMDB.Clear();
            episodeTitle.Clear();
            episodeSummary.Clear();
            GuestStars.Clear();
            Directors.Clear();
            Writers.Clear();
            episodeKeywords.Clear();
        }
Пример #12
0
        /// <summary>
        ///     Прокатывание внутренней операции записи в лог
        /// </summary>
        /// <param name="message"></param>
        private void InternalWrite(object message)
        {
            lock (_busylock) {
                try {
                    var lm = (LogMessage)message;

                    foreach (var w in Writers.ToArray())
                    {
                        if (w.Level <= lm.Level)
                        {
                            w.Write((LogMessage)message);
                        }
                    }
                    Finish = DateTime.Now;
                }
                catch (LogException ex) {
                    _internalThreadError = ex;
                }
                catch (Exception ex) {
                    _internalThreadError = new LogException("error in logger " + Name, ex);
                }
                finally {
                    Busy = false;
                }
            }
        }
Пример #13
0
 /// <summary>
 /// 写入日志文件消息
 /// <para>确定日志文件的时间标志</para>
 /// </summary>
 /// <param name="msg">日志消息属性</param>
 private void FileWrite(LogMessage msg)
 {
     if (this.FErrorCounted > 3)
     {
         return;
     }
     try {
         if (null == Writers)
         {
             FileOpen();
         }
         if (DateTime.Now >= this.FTimeSign)
         {
             FileClose();
             FileOpen();
             this.FTimeSign = DateTime.Now.AddHours(1);
         }
         Writers.WriteLine(string.Format(@"{0} [{1}]  {2}", msg.MsgDatetime.ToString("yyyy-MM-dd HH:mm:ss.fff"), msg.MsgType, msg.MsgText));
         Writers.Flush();
         System.Threading.Thread.Sleep(10);
     }
     catch {
         this.FErrorCounted++;
         //Console.Out.Write(e);
     }
 }
Пример #14
0
        public IObjResult <Writers> GetById(int id, AutUserInfo userInfo)
        {
            string  _resultMessage = string.Empty;
            int     _code          = StaticValues.InfoCode;
            bool    _resultval     = false;
            Writers _resultentity  = null;

            try
            {
                _resultentity = _repos.Get(x => x.Id == id && x.Active && !x.Deleted);
                if (_resultentity != null)
                {
                    _code          = StaticValues.SuccessCode;
                    _resultMessage = StaticValues.SuccessMessage;
                    _resultval     = true;
                }
                else
                {
                    _code          = StaticValues.ErrorNullObjCode;
                    _resultMessage = StaticValues.ErrorNullObjMessage;
                }
            }
            catch (Exception ex)
            {
                _logs.Add(userInfo.SessId, ex.ToString(), "GetById", "WritersManager", Enum.GetName(typeof(LayerInfo), 2), "", userInfo.ClientIp, userInfo.UsrId);
                _code          = StaticValues.ErrorCode;
                _resultMessage = StaticValues.ErrorMessage;
            }
            return(new ObjResult <Writers>(_resultval, _resultMessage, _code, _resultentity));
        }
Пример #15
0
    protected void Page_Load(object sender, EventArgs e)
    {
        string id = Request["wid"];

        if (Request["dwid"] != null)
        {
            if (Request["dwid"] == "1")
            {
                Writers.DeleteWriter(id);
                Response.Redirect("/Pages/AllWriters.aspx");
            }
        }

        w1 = Writers.GetWriterByID(id);

        Page.Title           = w1.GetName();
        NameLabel1.Text      = w1.GetName();
        NameLabel2.Text      = w1.GetName();
        bornYear.Text        = w1.GetBornYear().ToString();
        bornCountry.Text     = Countries.GetCountryByID(w1.GetBornCountry().ToString()).GetCountryName();
        WriterPhoto.ImageUrl = "../Pictures/Writers/" + w1.GetWriterPhoto();
        ContryFlag.ImageUrl  = "../Pictures/CountryFlag/" + Countries.GetCountryByID(w1.GetBornCountry().ToString()).GetFlag();
        moviesLinks.Text     = Movies.GetMoviesLinkByWriterID(id);

        if ((string)Session["allow"] == "1")
        {
            UpdateHyperLink.Visible     = true;
            SlashLabel.Visible          = true;
            DeleteHyperLink.Visible     = true;
            UpdateHyperLink.NavigateUrl = "/Admin/UpdateWriter.aspx?wid=" + w1.GetID();
            DeleteHyperLink.NavigateUrl = "/Pages/OneWriter.aspx?wid=" + w1.GetID() + "&dwid=1";
        }
    }
Пример #16
0
    protected void AddWriterButton_Click(object sender, EventArgs e)
    {
        string firstName = FirstNameTextBox.Text.Trim();
        string lastName  = LastNameTextBox.Text.Trim();

        if (firstName != "" && lastName != "")
        {
            int country = int.Parse(CountriesDropDownList.SelectedValue);
            int bYear   = int.Parse(BornYearTextBox.Text.Trim());

            string pic = "";
            if (PhotoFileUpload.PostedFile != null)
            {
                if (PhotoFileUpload.PostedFile.FileName.Trim().Length > 0 && PhotoFileUpload.PostedFile.ContentLength > 0)
                {
                    pic = Path.GetFileName(PhotoFileUpload.PostedFile.FileName.Trim());

                    string dir  = Server.MapPath("~/Pictures/Actors/");
                    string file = Path.GetFileName(PhotoFileUpload.PostedFile.FileName.Trim());

                    PhotoFileUpload.PostedFile.SaveAs(dir + file);
                }
            }

            Writer a1 = new Writer(0, firstName, lastName, bYear, country, pic);

            Writers.AddWriter(a1);

            int writerID = Writers.GetLastWriterID();

            Response.Redirect("/Pages/OneWriter.aspx?wid=" + writerID);
        }
    }
Пример #17
0
            // writers

            public void WriteItem(object value)
            {
                if (value == null)
                {
                    WriteMarker(Marker.Null);
                }
                else
                {
                    var type = value.GetType();

                    if (Int29Types.Contains(type))
                    {
                        WriteInt29(Convert.ToInt32(value));
                    }
                    else if (NumberTypes.Contains(type))
                    {
                        WriteDouble(Convert.ToDouble(value));
                    }
                    else if (Writers.TryGetValue(type, out var writer))
                    {
                        writer(this, value);
                    }
                    else
                    {
                        DispatchGenericWrite(value);
                    }
                }
            }
Пример #18
0
        public WriterForm(Writers writer)
        {
            InitializeComponent();
            Writer      = writer;
            this.Cursor = Cursors.WaitCursor;

            var    webClient  = new WebClient();
            var    webClient2 = new WebClient();
            string url        = "http://94.230.164.34:8080/api/PictureWriter?id=" + Writer.Id_writer;

            webClient.DownloadDataCompleted += DownloadDataCompleted;
            webClient.DownloadDataTaskAsync(url);

            writer_name_lbl.Text     = Writer.Full_name;
            date_of_birth_lbl.Text   = Writer.Date_of_birth.Value.Day.ToString() + "." + Writer.Date_of_birth.Value.Month.ToString() + "." + Writer.Date_of_birth.Value.Year.ToString();
            date_of_death_lbl.Text   = Writer.Date_of_death.Value.Day.ToString() + "." + Writer.Date_of_death.Value.Month.ToString() + "." + Writer.Date_of_death.Value.Year.ToString();
            place_of_birth_lbl.Text += Writer.Place_of_birth;
            place_of_death_lbl.Text += Writer.Place_of_death;
            writer_name_lbl.Left     = 750 - writer_name_lbl.Width / 2;
            date_of_birth_lbl.Left   = 750 - date_of_birth_lbl.Width / 2;
            date_of_death_lbl.Left   = 750 - date_of_death_lbl.Width / 2;
            place_of_birth_lbl.Left  = 750 - place_of_birth_lbl.Width / 2;
            place_of_death_lbl.Left  = 750 - place_of_death_lbl.Width / 2;
            if (Writer.Biography != null)
            {
                web.DocumentText = Writer.Biography;
            }
            else
            {
                web.DocumentText = Description.empty_description;
            }
        }
Пример #19
0
        /// <remarks>Throws <see cref="InvalidDiscoveryException"/> if the discovery result is invalid.</remarks>
        public void Rediscovery()
        {
            using (var session = new Session(_conn, _logger))
            {
                var result = session.Run($"CALL {ProcedureName}");
                var record = result.Single();
                // TODO require an IT to make sure List or IList, Dictionary or IDictionary
                foreach (var servers in record["servers"].As <List <Dictionary <string, object> > >())
                {
                    var addresses = servers["addresses"].As <List <string> >();
                    var role      = servers["role"].As <string>();
                    switch (role)
                    {
                    case "READ":
                        Readers = addresses.Select(BoltRoutingUri).ToArray();
                        break;

                    case "WRITE":
                        Writers = addresses.Select(BoltRoutingUri).ToArray();
                        break;

                    case "ROUTE":
                        Routers = addresses.Select(BoltRoutingUri).ToArray();
                        break;
                    }
                }
                ExpireAfterSeconds = record["ttl"].As <long>();
            }
            if (!Readers.Any() || !Writers.Any() || !Routers.Any())
            {
                throw new InvalidDiscoveryException(
                          $"Invalid discovery result: discovered {Routers.Count()} routers, " +
                          $"{Writers.Count()} writers and {Readers.Count()} readers. A Redisvoery is required.");
            }
        }
Пример #20
0
        public async Task <DeviceSource> ConnectAsync(string port, UInt16 universe)
        {
            try
            {
                var writer = await WriterFactory.CreateDmxWriterAsync(port);

                if (!Writers.Values.Any(x => x.UniverseID == universe))
                {
                    // start listening on a new universe
                    SacnReceiver.JoinMulticastGroup(universe);
                }
                Writers.Add(port, new WriterEntry {
                    Writer = writer, UniverseID = universe
                });
            }
            catch (Exception ex)
            {
                await Console.Error.WriteAsync(ex.ToString());

                throw new ExecutionError(ex.Message);
            }
            return(new DeviceSource
            {
                Id = port,
                Status = DeviceStatus.InUse,
                Universe = universe
            });
        }
Пример #21
0
        public async Task <DeviceSource> DisconnectAsync(string port)
        {
            var writer = Writers[port];

            try
            {
                await writer.Writer.DisposeAsync();
            }
            catch (Exception ex)
            {
                throw new ExecutionError(ex.Message);
            }

            var universeId = writer.UniverseID;

            Writers.Remove(port);
            if (!Writers.Values.Any(x => x.UniverseID == universeId))
            {
                // nobody needs anything from this universe anymore, so stop listening
                SacnReceiver.DropMulticastGroup(universeId);
            }

            return(new DeviceSource
            {
                Id = port,
                Status = DeviceStatus.Available
            });
        }
Пример #22
0
        private async void TerminateAll()
        {
            try
            {
                IsBusy = true;

                int writerCount = Writers.Count;
                int readerCount = Readers.Count;

                await Task.WhenAll(Writers.Select( x => x.Stop()).Union( Readers.Select(x => x.Stop())).ToArray()).ConfigureAwait(false);

                Writers.Clear();
                Readers.Clear();

                Data.RecordSettingChange("Writer Count", writerCount, Writers.Count);
                Data.RecordSettingChange("Reader Count", readerCount, Readers.Count);
            }
            catch (Exception e)
            {
                Data.Error("MainWindow", "Failed to terminate everything.", e);
            }
            finally
            {
                IsBusy = false;
                _rebuildPartitionOwners = true;
            }
        }
Пример #23
0
        public void TestPersonTypeInferenceNotWorking()
        {
            // here is the signature for p2R:
            //let p2R (ra: Reader<'a,'f1>, rb: Reader<'b,'f2>, func : System.Func<'a,'b,'r>)
            // here, i create a reader using p2R. it doesnt require type params.
            var r = ReadersCS.p2R(Readers.stringR, Readers.intR, (s, i) => new Person(s, i));

            // here is the definition of tuple2W:
            // let tuple2W(wa,wb) = p2W(wa,wb)(<|)
            // here, i create a writer using tuple2W. as you can see, it doesn't type params.
            var wt = Writers.tuple2W(Writers.stringW, Writers.intW).Cmapcs((Person p) => Tuple.Create(p.Name, p.Age));

            // here is the signature for p2W
            // let p2W(wa: Out<'a,'f1>, wb: Out<'b,'f2>,
            // func: System.Func<System.Func<'a,'b, EfW<P2<'f1,'f2>>>, 'r, EfW<P2<'f1,'f2>>>): Writer<'r,P2<'f1,'f2>>
            // here, i create a writer using p2W. it DOES require type params. why?
            //var w = WritersCS.p2W<String, Formats.StringF, int, Formats.IntF, Person>(Writers.stringW, Writers.intW, (ab, p) =>
            //    ab(p.Name, p.Age));
            //var w = WritersCS.p2W(Writers.stringW, Writers.intW, (ab) => (Person p) => ab(p.Name, p.Age));
            var w = WritersCS.p2W(Writers.stringW, Writers.intW).Invoke <Person>((ab, p) => ab(p.Name, p.Age));
            // here is what it would look like without the types.
            // var w = WritersCS.p2W(Writers.stringW, Writers.intW, (ab, p) => ab(p.Name, p.Age));
            // which is definitely a win over the tuple form:
            // var wt = Writers.tuple2W(Writers.stringW, Writers.intW).cmapcs((Person p) => Tuple.Create(p.Name, p.Age));

            // this is really only a few characters smaller than using tuple2W and cmapcs.
            // so, if we never figure this problem out, i don't really think its that huge of an issue
            // one potential problem is that tuples only go up to T7 or T8 though.

            Person result = TestHelpers.roundTrip(j, w, r);

            Assert.AreEqual(j.Name, result.Name);
            Assert.AreEqual(j.Age, result.Age);
        }
Пример #24
0
    [TestCase(0xABAB, new byte[] { 0, 0xAB, 0xAB, 0, 0, 0, 0, 0, 0 }, 1)] // Write 6 from position 1
    public void WriteUInt(long value, byte[] expectedArray, int startIndex = 0)
    {
        var array = new ByteArray(new byte[9], startIndex);

        Writers.WriteUInt((uint)value, array);
        Assert.IsTrue(CompareArray(array.Array, expectedArray), "Array did not match expected array.");
    }
Пример #25
0
        public Movie(String file, JsonMainDetails.Data infos, String coverFileName) : this()
        {
            TimeAdded = DateTime.Now.ToUnixTimestamp();

            Title = infos.title;
            try
            {
                Year = int.Parse(infos.year);
            }
            catch { }
            if (infos.plot != null)
            {
                Plot = infos.plot.outline;
            }
            ImdbId = infos.tconst;
            Principals.AddRange(infos.cast_summary.NoNull().Select(p => p.name.name));
            Directors.AddRange(infos.directors_summary.NoNull().Select(p => p.name.name));
            Writers.AddRange(infos.writers_summary.NoNull().Select(p => p.name.name));
            Genres.AddRange(infos.genres.NoNull());
            ImdbRating = infos.rating;
            if (infos.runtime != null)
            {
                Duration = infos.runtime.time;
            }

            Files.Add(file);
            Cover = coverFileName;
        }
Пример #26
0
        // adds Mirror.GeneratedNetworkCode.InitReadWriters() method that
        // registers all generated writers into Mirror.Writer<T> static class.
        // -> uses [RuntimeInitializeOnLoad] attribute so it's invoke at runtime
        // -> uses [InitializeOnLoad] if UnityEditor is referenced so it works
        //    in Editor and in tests too
        //
        // use ILSpy to see the result (it's in the DLL's 'Mirror' namespace)
        public static void InitializeReaderAndWriters(AssemblyDefinition currentAssembly)
        {
            MethodDefinition rwInitializer = new MethodDefinition("InitReadWriters", MethodAttributes.Public |
                                                                  MethodAttributes.Static,
                                                                  WeaverTypes.Import(typeof(void)));

            // add [RuntimeInitializeOnLoad] in any case
            System.Reflection.ConstructorInfo attributeconstructor = typeof(RuntimeInitializeOnLoadMethodAttribute).GetConstructor(new[] { typeof(RuntimeInitializeLoadType) });
            CustomAttribute customAttributeRef = new CustomAttribute(currentAssembly.MainModule.ImportReference(attributeconstructor));

            customAttributeRef.ConstructorArguments.Add(new CustomAttributeArgument(WeaverTypes.Import <RuntimeInitializeLoadType>(), RuntimeInitializeLoadType.BeforeSceneLoad));
            rwInitializer.CustomAttributes.Add(customAttributeRef);

            // add [InitializeOnLoad] if UnityEditor is referenced
            if (IsEditorAssembly(currentAssembly))
            {
                System.Reflection.ConstructorInfo initializeOnLoadConstructor = typeof(InitializeOnLoadMethodAttribute).GetConstructor(new Type[0]);
                CustomAttribute initializeCustomConstructorRef = new CustomAttribute(currentAssembly.MainModule.ImportReference(initializeOnLoadConstructor));
                rwInitializer.CustomAttributes.Add(initializeCustomConstructorRef);
            }

            // fill function body with reader/writer initializers
            ILProcessor worker = rwInitializer.Body.GetILProcessor();

            // for debugging: add a log to see if initialized on load
            //worker.Emit(OpCodes.Ldstr, $"[InitReadWriters] called!");
            //worker.Emit(OpCodes.Call, WeaverTypes.logWarningReference);

            Writers.InitializeWriters(worker);
            Readers.InitializeReaders(worker);

            worker.Emit(OpCodes.Ret);

            Weaver.GeneratedCodeClass.Methods.Add(rwInitializer);
        }
Пример #27
0
        public IResult Delete(int id, AutUserInfo userInfo)
        {
            string _resultMessage = string.Empty;
            int    _code          = StaticValues.InfoCode;
            bool   _resultval     = false;

            try
            {
                Writers model = _repos.Get(x => x.Id == id);
                if (model != null)
                {
                    model.Active         = false;
                    model.Deleted        = true;
                    model.ModifiedDate   = DateTime.Now;
                    model.ModifiedUserId = userInfo.UsrId;
                    _repos.Update(model);
                    _code          = StaticValues.SuccessCode;
                    _resultMessage = StaticValues.SuccessMessage;
                    _resultval     = true;
                }
                else
                {
                    _code          = StaticValues.ErrorNullObjCode;
                    _resultMessage = StaticValues.ErrorNullObjMessage;
                }
            }
            catch (Exception ex)
            {
                _logs.Add(userInfo.SessId, ex.ToString(), "Delete", "WritersManager", Enum.GetName(typeof(LayerInfo), 2), "", userInfo.ClientIp, userInfo.UsrId);
                _code          = StaticValues.ErrorCode;
                _resultMessage = StaticValues.ErrorMessage;
            }
            return(new Result(_resultval, _resultMessage, _code));
        }
Пример #28
0
        public IObjResult <Writers> GetWriter(int id)
        {
            AutUserInfo userInfo      = _httpContext.HttpContext.Session.GetObject <AutUserInfo>("UserInfo");
            string      resultmessage = StaticValues.ErrorMessage;
            int         resultcode    = StaticValues.ErrorCode;
            bool        resultval     = false;
            Writers     resultobj     = null;

            try
            {
                if (!_memcache.TryGetValue <Writers>("Writer" + id, out resultobj))
                {
                    var result = _writer.GetById(id, userInfo);
                    resultcode    = result.ResultCode;
                    resultmessage = result.Message;
                    resultval     = result.IsSuccess;
                    resultobj     = result.Object;
                    if (resultval)
                    {
                        _memcache.Set <Writers>("Writer" + id, resultobj);
                    }
                }
                else
                {
                    resultcode    = StaticValues.SuccessCode;
                    resultmessage = StaticValues.SuccessMessage;
                    resultval     = true;
                }
            }
            catch (Exception ex)
            {
                _logs.Add(userInfo.SessId, ex.ToString(), "GetWriter", "WriterController", Enum.GetName(typeof(LayerInfo), 1), "", userInfo.ClientIp, userInfo.UsrId);
            }
            return(new ObjResult <Writers>(resultval, resultmessage, resultcode, resultobj));
        }
Пример #29
0
        public void CreateIndexOn(ActivityStreamFilter filter)
        {
            filter = this.filter.Extend(filter);
            var path = filter.ToUri(null);

            Writers.Add(new FilteredObjectIdStreamWriter(filter, OpenWrite(path), ctx));
            Indexes.Add(filter);
        }
Пример #30
0
        /// <exception cref="SerializeFunctionException">Throws when can not generate read or write function</exception>
        static ValueSerializer FindSerializeFunctions(Writers writers, Readers readers, TypeReference fieldType)
        {
            // writers or readers might be null here, this is allowed because user of ValueSerializer might only be doing writing, or only doing reading
            MethodReference writeFunction = writers?.GetFunction_Thorws(fieldType);
            MethodReference readFunction  = readers?.GetFunction_Thorws(fieldType);

            return(new FunctionSerializer(writeFunction, readFunction));
        }
        public void OnResultExecuting(ResultExecutingContext filterContext)
        {
            if (!FilterApplies(filterContext)) return;

            var requestId = Guid.NewGuid();
            filterContext.RequestContext.HttpContext.Items["request-id"] = requestId;

            //Hijacks the output so that its saved to our local variable
            var stringBuilder = new StringBuilder();
            var stringWriter = new StringWriter(stringBuilder);
            var output = filterContext.RequestContext.HttpContext.Response.Output;

            var writers = new Writers()
            {
                Builder = stringBuilder,
                Output = output
            };

            filterContext.HttpContext.Items[requestId] = writers;

            filterContext.RequestContext.HttpContext.Response.Output = stringWriter;
        }
 public UniqueFileIdentifierFrameWriter(UniqueFileIdentifierFrame frameToWrite, Writers.FrameHeaderWriter frameHeaderWriter, string frameID, EncodingScheme encoding)
     : base(frameToWrite, frameHeaderWriter, frameID, encoding)
 {
 }
 public GeneralEncapsulatedObjectFrameWriter(GeneralEncapsulatedObjectFrame frameToWrite, Writers.FrameHeaderWriter frameHeaderWriter, string frameID, EncodingScheme encoding)
     : base(frameToWrite, frameHeaderWriter, frameID, encoding)
 {
 }
Пример #34
0
 public PrivateFrameWriter(PrivateFrame frameToWrite, Writers.FrameHeaderWriter frameHeaderWriter, string frameID, EncodingScheme encoding)
     : base(frameToWrite, frameHeaderWriter, frameID, encoding)
 {
 }
 public MusicCDIdentifierFrameWriter(MusicCDIdentifierFrame frameToWrite, Writers.FrameHeaderWriter frameHeaderWriter, string frameID, EncodingScheme encoding)
     : base(frameToWrite, frameHeaderWriter, frameID, encoding)
 {
 }
Пример #36
0
 public PictureFrameWriterM3And4(PictureFrame frameToWrite, string frameID, Writers.FrameHeaderWriter headerWriter, EncodingScheme encoding)
     : base(frameToWrite, headerWriter, frameID, encoding)
 {
 }