---
name: "HTTP::Headers::ActionPack::MediaTypeList"
section: "3pm"
platform: "linux"
package: "libhttp-headers-actionpack-perl"
version: "0.09-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/HTTP::Headers::ActionPack::MediaTypeList"
---

# HTTP::Headers::ActionPack::MediaTypeList(3pm)

A Priority List customized for Media Types

## NAME

HTTP::Headers::ActionPack::MediaTypeList - A Priority List customized for Media Types

## VERSION

version 0.09

## SYNOPSIS

```
  use HTTP::Headers::ActionPack::MediaTypeList;
  # normal constructor
  my $list = HTTP::Headers::ActionPack::MediaTypeList->new(
      HTTP::Headers::ActionPack::MediaType->new('audio/*', q => 0.2 ),
      HTTP::Headers::ActionPack::MediaType->new('audio/basic', q => 1.0 )
  );
  # you can also specify the 'q'
  # rating independent of the
  # media type definition
  my $list = HTTP::Headers::ActionPack::MediaTypeList->new(
      [ 0.2 => HTTP::Headers::ActionPack::MediaType->new('audio/*', q => 0.2 )     ],
      [ 1.0 => HTTP::Headers::ActionPack::MediaType->new('audio/basic' ) ]
  );
  # or from a string
  my $list = HTTP::Headers::ActionPack::MediaTypeList->new_from_string(
      'audio/*; q=0.2, audio/basic'
  );
```

## DESCRIPTION

This is a subclass of the HTTP::Headers::ActionPack::PriorityList class with some specific media-type features. It is the default object used to parse most of the `"Accept"` header since they will often contain more then one media type.

## METHODS

- "iterable"

  This returns the same data type as the parent (two element ARRAY ref with quality and choice), but the choice element will be a HTTP::Headers::ActionPack::MediaType object. This is also sorted in a very specific manner in order to align with RFC-2616 Sec14.

  ```
    Media ranges can be overridden by more specific
    media ranges or specific media types. If more
    than one media range applies to a given type,
    the most specific reference has precedence.
  ```

- "canonicalize\_choice"

  If this is passed a string, it returns a new HTTP::Headers::ActionPack::MediaType object from that string. If it receives an object it simply returns that object as is.

## AUTHOR

Stevan Little \<stevan.little@iinteractive.com\>

## CONTRIBUTORS

- •

  Andrew Nelson \<anelson@cpan.org\>

- •

  Dave Rolsky \<autarch@urth.org\>

- •

  Florian Ragwitz \<rafl@debian.org\>

- •

  Jesse Luehrs \<doy@tozt.net\>

- •

  Karen Etheridge \<ether@cpan.org\>

## COPYRIGHT AND LICENSE

This software is copyright (c) 2012 by Infinity Interactive, Inc..

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
