Spec-Zone .ru
спецификации, руководства, описания, API


javax.mail.internet
Класс InternetHeaders

java.lang.Object
  расширенный javax.mail.internet.InternetHeaders

public class InternetHeaders
расширяет java.lang. Объект

InternetHeaders является утилитой class, которая управляет заголовками стиля RFC822. Учитывая поток сообщения формата RFC822, это читает строки до пустой строки, которая указывает на конец заголовка. Входной поток располагается в начале тела. Строки сохранены в пределах объекта и могут быть извлечены или как Строки или как Header объекты.

Этот class главным образом предназначается для поставщиков услуг. MimeMessage и MimeBody используют этот class для содержания их заголовков.


Примечание по RFC822 и заголовкам MIME

RFC822 и поля заголовка MIME должны содержать только символы US-ASCII. Если заголовок содержит не символы US-ASCII, он должен быть закодирован согласно правилам в RFC 2047. MimeUtility class, обеспеченный в этом пакете, может привыкнуть к достигнуть этого. Вызывающие стороны setHeader, addHeader, и addHeaderLine методы ответственны за осуществление требований MIME для указанных заголовков. Кроме того, эти поля заголовка должны быть свернуты (обернутые) прежде, чем быть отправленным, если они превышают ограничение длины строки для транспорта (1000 байтов для SMTP)., Возможно, были свернуты полученные заголовки. Приложение ответственно за сворачивание и разворачивание заголовков как соответствующий.

Текущая реализация поддерживает свойство System mail.mime.ignorewhitespacelines, который если установлено в истину заставит строку, содержащую только пробел считаться пустой строкой, завершающей заголовок.

Автор:
Джон Мани, Билл Шеннон
См. Также:
MimeUtility

Вложенная Сводка Класса
protected static class InternetHeaders. InternetHeader
          Отдельный интернет-заголовок.
 
Полевая Сводка
protected  java.util.List заголовки
          Фактический список Заголовков, включая записи заполнителя.
 
Сводка конструктора
InternetHeaders()
          Создайте пустой объект InternetHeaders.
InternetHeaders(java.io.InputStream is)
          Считайте и проанализируйте данный поток сообщения RFC822 до пустой строки, разделяющей заголовок от тела.
 
Сводка метода
 void addHeader(java.lang.String name, java.lang.String value)
          Добавьте заголовок с указанным именем и оцените списку заголовка.
 void addHeaderLine(java.lang.String line)
          Добавьте строку заголовка RFC822 к хранилищу заголовка.
 java.util.Enumeration getAllHeaderLines()
          Возвратите все строки заголовка как Перечисление Строк.
 java.util.Enumeration getAllHeaders()
          Возвратите все заголовки как Перечисление Header объекты.
 java.lang.String[] getHeader(java.lang.String name)
          Возвратите все значения для указанного заголовка.
 java.lang.String getHeader(java.lang.String name, java.lang.String delimiter)
          Получите все заголовки для этого имени заголовка, возвращенного как единственная Строка, с заголовками, разделенными разделителем.
 java.util.Enumeration getMatchingHeaderLines(java.lang.String[] names)
          Возвратите все строки заголовка соответствия как Перечисление Строк.
 java.util.Enumeration getMatchingHeaders(java.lang.String[] names)
          Возвратите все соответствие Header объекты.
 java.util.Enumeration getNonMatchingHeaderLines(java.lang.String[] names)
          Возвратите все строки заголовка несоответствия
 java.util.Enumeration getNonMatchingHeaders(java.lang.String[] names)
          Возвратите все несоответствие Header объекты.
 void load(java.io.InputStream is)
          Считайте и проанализируйте данный поток сообщения RFC822 до пустой строки, разделяющей заголовок от тела.
 void removeHeader(java.lang.String name)
          Удалите все записи заголовка, которые соответствуют имя
 void setHeader(java.lang.String name, java.lang.String value)
          Измените первую строку заголовка, которая соответствует имя, чтобы иметь значение, добавляя новый заголовок, если никакой существующий заголовок не соответствует.
 
Методы, наследованные от class java.lang. Объект
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Полевая Деталь

заголовки

protected java.util.List headers
Фактический список Заголовков, включая записи заполнителя. Записи заполнителя являются Заголовками с нулевым значением и никогда не замечаются клиентами InternetHeaders class. Записи заполнителя используются, чтобы отследить привилегированный порядок заголовков. Заголовки фактически никогда не удаляются из списка, они преобразовываются в записи заполнителя. Новые заголовки добавляются после существующих заголовков того же самого имени (или прежде в случае Received и Return-Path заголовки). Если никакой существующий заголовок или заполнитель для заголовка не находятся, новые заголовки добавляются после специального заполнителя с именем ":".

С тех пор:
JavaMail 1.4
Деталь конструктора

InternetHeaders

public InternetHeaders()
Создайте пустой объект InternetHeaders. Записи заполнителя вставляются, чтобы указать на привилегированный порядок заголовков.


InternetHeaders

public InternetHeaders(java.io.InputStream is)
                throws MessagingException
Считайте и проанализируйте данный поток сообщения RFC822 до пустой строки, разделяющей заголовок от тела. Входной поток оставляют расположенным в начале тела. Строки заголовка сохранены внутренне.

Для эффективности, обертка BufferedInputStream вокруг фактического входного потока и передачи это как параметр.

Никакие записи заполнителя не вставляются; первоначальный заказ заголовков сохраняется.

Параметры:
is - Входной поток RFC822
Броски:
MessagingException
Деталь метода

загрузка

public void load(java.io.InputStream is)
          throws MessagingException
Считайте и проанализируйте данный поток сообщения RFC822 до пустой строки, разделяющей заголовок от тела. Сохраните строки заголовка в этом объекте InternetHeaders. Порядок строк заголовка сохраняется.

Отметьте, что строки заголовка добавляются в этот объект InternetHeaders, таким образом, на любые существующие заголовки в этом объекте не будут влиять. Заголовки добавляются до конца существующего списка заголовков в порядке.

Параметры:
is - Входной поток RFC822
Броски:
MessagingException

getHeader

public java.lang.String[] getHeader(java.lang.String name)
Возвратите все значения для указанного заголовка. Значения являются Строковыми объектами. Возвраты null если никакие заголовки с указанным именем не существуют.

Параметры:
name - имя заголовка
Возвраты:
массив значений заголовка, или нуль, если ни один

getHeader

public java.lang.String getHeader(java.lang.String name,
                                  java.lang.String delimiter)
Получите все заголовки для этого имени заголовка, возвращенного как единственная Строка, с заголовками, разделенными разделителем. Если разделитель null, только первый заголовок возвращается. Возвраты null если никакие заголовки с указанным именем не существуют.

Параметры:
name - имя заголовка
delimiter - разделитель
Возвраты:
поля значения для всех заголовков с этим именем, или нуль, если ни один

setHeader

public void setHeader(java.lang.String name,
                      java.lang.String value)
Измените первую строку заголовка, которая соответствует имя, чтобы иметь значение, добавляя новый заголовок, если никакой существующий заголовок не соответствует. Удалите все заголовки соответствия, но первое.

Отметьте, что заголовки RFC822 могут только содержать символы US-ASCII

Параметры:
name - имя заголовка
value - значение заголовка

addHeader

public void addHeader(java.lang.String name,
                      java.lang.String value)
Добавьте заголовок с указанным именем и оцените списку заголовка.

Текущая реализация знает о привилегированном порядке большинства известных заголовков и вставит заголовки в тот порядок. Кроме того, это знает это Received заголовки должны быть вставлены в обратном порядке (новейший прежде самый старый), и что они должны появиться в начале заголовков, preceeded только возможным Return-Path заголовок.

Отметьте, что заголовки RFC822 могут только содержать символы US-ASCII.

Параметры:
name - имя заголовка
value - значение заголовка

removeHeader

public void removeHeader(java.lang.String name)
Удалите все записи заголовка, которые соответствуют имя

Параметры:
name - имя заголовка

getAllHeaders

public java.util.Enumeration getAllHeaders()
Возвратите все заголовки как Перечисление Header объекты.

Возвраты:
Объекты заголовка

getMatchingHeaders

public java.util.Enumeration getMatchingHeaders(java.lang.String[] names)
Возвратите все соответствие Header объекты.

Возвраты:
соответствие объектов Заголовка

getNonMatchingHeaders

public java.util.Enumeration getNonMatchingHeaders(java.lang.String[] names)
Возвратите все несоответствие Header объекты.

Возвраты:
несоответствие объектов Заголовка

addHeaderLine

public void addHeaderLine(java.lang.String line)
Добавьте строку заголовка RFC822 к хранилищу заголовка. Если строка запускается с пространства или вкладки (строка продолжения), добавьте это к последней строке заголовка в списке. Иначе, добавьте новую строку заголовка к списку.

Отметьте, что заголовки RFC822 могут только содержать символы US-ASCII

Параметры:
line - необработанная строка заголовка RFC822

getAllHeaderLines

public java.util.Enumeration getAllHeaderLines()
Возвратите все строки заголовка как Перечисление Строк.


getMatchingHeaderLines

public java.util.Enumeration getMatchingHeaderLines(java.lang.String[] names)
Возвратите все строки заголовка соответствия как Перечисление Строк.


getNonMatchingHeaderLines

public java.util.Enumeration getNonMatchingHeaderLines(java.lang.String[] names)
Возвратите все строки заголовка несоответствия



Представьте ошибку или функцию

Авторское право © 2009-2011, Oracle Corporation и/или его филиалы. Все права защищены. Использование подвергается срокам действия лицензии.

Сгенерированный на 10-February-2011 12:41

free hit counter