Raven.DynamicSession.DynamicSession.ChainBuilder.HandleInsert C# (CSharp) Method

HandleInsert() private method

private HandleInsert ( object args, object &result ) : bool
args object
result object
return bool
            private bool HandleInsert(object[] args, out object result)
            {
                var objectToStore = args[0];
                string id;

                Guid guidId;

                if (Guid.TryParse(args[1].ToString(), out guidId))
                {
                    id = guidId.ToString();
                }
                else if (args[1] is int)
                {
                    id = CollectionName.ToLower() + "/" + args[1];
                }
                else
                {
                    id = (string)args[1];
                }

                Session.Store(objectToStore, id);

                var metadata = Session.Advanced.GetMetadataFor(objectToStore);
                metadata["Raven-Entity-Name"] = CollectionName;
                metadata[DynamicClrTypePlaceHolder] = CollectionName;

                if (DynamicSession.ClrTypeConversions.ContainsKey(CollectionName.ToLower()))
                    metadata[Constants.RavenClrType] = ClrTypeConversions[CollectionName.ToLower()];

                result = objectToStore;
                return true;
            }
        }