Exemplo n.º 1
0
        protected internal BaseRelationship AssignCollectionAttributesAndRelationships <TAttributes, TRelationships>(
            IReadOnlyCollection <PatreonData> includes,
            PatreonCollectionResponse <TAttributes, TRelationships> baseCollection) where TRelationships : IRelationship
        {
            if (baseCollection?.Data == null)
            {
                return(this);
            }

            foreach (var collectionInstance in baseCollection.Data)
            {
                var include =
                    includes.FirstOrDefault(x => x.Id == collectionInstance.Id) as
                    PatreonData <TAttributes, TRelationships>;
                if (include != null)
                {
                    collectionInstance.Attributes    = include.Attributes;
                    collectionInstance.Relationships = include.Relationships;
                }

                collectionInstance.Relationships?.AssignRelationship(includes);
            }

            return(this);
        }
Exemplo n.º 2
0
 public static PatreonCollectionResponse <A, R> CreateRelationship <A, R>(PatreonCollectionResponse <A, R> response)
     where R : IRelationship =>
 new PatreonCollectionResponse <A, R>
 {
     Data  = response.Data.Select(Strip),
     Links = response.Links,
     Meta  = response.Meta,
 };