protected void GivenACodec <TCodec, TResource>(string mediaTypes, string config)
        {
            foreach (var mediaType in MediaType.Parse(mediaTypes))
            {
                Type resourceType = typeof(TResource);

                Codecs.Add(CodecRegistration.FromResourceType(resourceType,
                                                              typeof(TCodec),
                                                              TypeSystems.Default,
                                                              mediaType,
                                                              null,
                                                              config, false));
            }
        }
        public override void Process(IMetaModelRepository repository)
        {
            var codecRegistrations = from resource in repository.ResourceRegistrations
                                     let isStrict = resource.IsStrictRegistration
                                                    from codec in resource.Codecs
                                                    from mediaType in codec.MediaTypes
                                                    select new CodecRegistration(
                codec.CodecType,
                resource.ResourceKey,
                isStrict,
                mediaType.MediaType,
                mediaType.Extensions,
                codec.Configuration,
                false);

            foreach (var reg in codecRegistrations)
            {
                _codecRepository.Add(reg);
            }
        }