CallfireApiClient.CallfireContractResolver.CreateProperty C# (CSharp) Method

CreateProperty() protected method

protected CreateProperty ( MemberInfo member, MemberSerialization memberSerialization ) : JsonProperty
member System.Reflection.MemberInfo
memberSerialization MemberSerialization
return Newtonsoft.Json.Serialization.JsonProperty
        protected override JsonProperty CreateProperty(MemberInfo member, MemberSerialization memberSerialization)
        {
            var prop = base.CreateProperty(member, memberSerialization);
            var pi = member as PropertyInfo;
            if (pi != null)
            {
                prop.Readable = (pi.GetGetMethod(true) != null);
                prop.Writable = (pi.GetSetMethod(true) != null);
            }
            Predicate<object> shouldSerialize = prop.ShouldSerialize;
            prop.ShouldSerialize = obj => (shouldSerialize == null || shouldSerialize(obj)) && !IsEmptyCollection(prop, obj);
            return prop;
        }