Spec-Zone .ru
спецификации, руководства, описания, API
|
|
|||||||||
ПРЕДЫДУЩИЙ КЛАСС СЛЕДУЮЩИЙ КЛАСС | ФРЕЙМЫ НИКАКИЕ ФРЕЙМЫ | ||||||||
СВОДКА: ВЛОЖЕННЫЙ | ПОЛЕ | CONSTR | МЕТОД | ДЕТАЛЬ: ПОЛЕ | CONSTR | МЕТОД |
java.lang.Object javax.mail.Session
public final class Session
Сеанс class представляет почтовый сеанс и не разделяется на подклассы. Это собирает вместе свойства и значения по умолчанию, используемые почтовым API. Единственный сеанс значения по умолчанию может быть совместно использован многократными приложениями на рабочем столе. Неразделенные сеансы могут также быть созданы.
class Сеанса обеспечивает доступ к провайдерам протокола, которые реализуют Store
, Transport
, и связанные классы. Провайдеры протокола конфигурируются, используя следующие файлы:
javamail.providers
и javamail.default.providers
javamail.address.map
и javamail.default.address.map
Каждый javamail.
X файлов ресурсов ищутся то, что они использовали три метода в следующем порядке:
java.home/lib/javamail.
X META-INF/javamail.
X META-INF/javamail.default.
X Первый метод позволяет пользователю включать их собственную версию файла ресурсов, помещая это в lib
каталог, где java.home
точки свойства. Второй метод позволяет приложение, которое использует API JavaMail, чтобы включать их собственные файлы ресурсов в их приложение или файл фляги META-INF
каталог. javamail.default.
X файлов значения по умолчанию являются частью JavaMail mail.jar
файл.
Расположение файла зависит от как ClassLoader
метод getResource
реализуется. Обычно, getResource
метод перерывает ПУТЬ К КЛАССУ, пока это не находит требуемый файл и затем останавливается. У JDK 1.1 есть ограничение, что число файлов каждого имени, которое будет найдено в ПУТИ К КЛАССУ, ограничивается одним. Однако, это только влияет на метод два, выше; метод каждый загружается из определенного расположения (если позволено SecurityManager) и метод три, использует другое имя, чтобы гарантировать, что файл ресурсов значения по умолчанию всегда загружается успешно. J2SE 1.2 и позже не ограничиваются одним файлом имени.
Упорядочивание записей в вопросах файлов ресурсов. Если многократные записи существуют, первые записи имеют приоритет по более поздним записям. Например, первый найденный провайдер IMAP будет установлен как реализация IMAP значения по умолчанию пока явно не изменено приложением. Пользователь - или предоставленное систему приращение файлов ресурсов, они не переопределяют, файлы значения по умолчанию, включенные с API JavaMail. Это означает, что все записи во всех загруженных файлах будут доступны.
javamail.providers
и javamail.default.providers
Эти файлы ресурсов определяют хранилища и транспорты, которые доступны на системе, позволяя приложение "обнаружить", какое хранилище и транспортные реализации доступны. Реализации протокола перечисляются один на строку. Формат файла определяет четыре атрибута, которые описывают реализацию протокола. Каждый атрибут "= "-разделенная пара значение-имя с именем в нижнем регистре. Каждая пара значение-имя является точкой с запятой (";") разделенный. Следующие имена определяются.
Имя | Описание |
---|---|
протокол | Имя, присвоенное протоколу. Например, smtp для Транспорта. |
ввести | Действительные доступы store и transport . |
class | Имя класса, которое реализует этот протокол. |
поставщик | Дополнительная строка, идентифицирующая поставщика. |
версия | Дополнительная строка, идентифицирующая версию. |
Вот пример META-INF/javamail.default.providers
содержание файла:
protocol=imap; type=store; class=com.sun.mail.imap.IMAPStore; vendor=Sun Microsystems, Inc.; protocol=smtp; type=transport; class=com.sun.mail.smtp.SMTPTransport; vendor=Sun Microsystems, Inc.;
javamail.address.map
и javamail.default.address.map
Эти файлы ресурсов отображают транспортные типы адреса на транспортный протокол. getType
метод javax.mail. Адрес возвращает тип адреса. javamail.address.map
файл отображает транспортный тип на протокол. Формат файла является серией пар значение-имя. Каждое ключевое имя должно соответствовать типу адреса, который в настоящий момент устанавливается на системе; должна также быть запись для каждого javax.mail.Address
реализация, которая присутствует, если она должна использоваться. Например, javax.mail.internet.InternetAddress
метод getType
возвраты "rfc822". Каждый протокол, на который ссылаются, должен быть установлен на системе. Для случая news
, ниже, клиент должен установить Транспортного провайдера, поддерживающего протокол сппн.
Вот типичное содержание a javamail.address.map
файл:
rfc822=smtp news=nntp
Сводка метода | |
---|---|
void |
addProvider(Provider provider)
Добавьте провайдера к сеансу. |
boolean |
getDebug()
Получите параметр настройки отладки для этого Сеанса. |
java.io.PrintStream |
getDebugOut()
Возвращает поток, который будет использоваться для отладочной информации. |
static Session |
getDefaultInstance(java.util.Properties props)
Получите объект Сеанса значения по умолчанию. |
static Session |
getDefaultInstance(java.util.Properties props, Authenticator authenticator)
Получите объект Сеанса значения по умолчанию. |
Папка |
getFolder(URLName url)
Получите закрытый объект Папки для данного URLName. |
static Session |
getInstance(java.util.Properties props)
Получите новый объект Сеанса. |
static Session |
getInstance(java.util.Properties props, Authenticator authenticator)
Получите новый объект Сеанса. |
PasswordAuthentication |
getPasswordAuthentication(URLName url)
Возвратитесь любой спас PasswordAuthentication для этого (хранилище или транспорт) URLName. |
java.util.Properties |
getProperties()
Возвращает объект Свойств, связанный с этим Сеансом |
java.lang.String |
getProperty(java.lang.String name)
Возвращает значение указанного свойства. |
Провайдер |
getProvider(java.lang.String protocol)
Возвращает Провайдера значения по умолчанию для определенного протокола. |
Провайдер[] |
getProviders()
Этот метод возвращает массив всех реализаций, установленных через javamail. [значение по умолчанию]. файлы провайдеров, которые могут быть загружены, используя ClassLoder, доступный этому приложению. |
Хранилище |
getStore()
Доберитесь Хранилище возражают, что реализует требуемый протокол Хранилища этого пользователя. |
Хранилище |
getStore(Provider provider)
Получите экземпляр хранилища, определенного Провайдером. |
Хранилище |
getStore(java.lang.String protocol)
Доберитесь Хранилище возражают, что реализует указанный протокол. |
Хранилище |
getStore(URLName url)
Получите объект Хранилища для данного URLName. |
Транспорт |
getTransport()
Получите Транспортный объект, который реализует требуемый Транспорт этого пользователя protcol. |
Транспорт |
getTransport(Address address)
Получите Транспортный объект, который может транспортировать сообщение указанного типа адреса. |
Транспорт |
getTransport(Provider provider)
Получите экземпляр транспорта, определенного в Провайдере. |
Транспорт |
getTransport(java.lang.String protocol)
Получите Транспортный объект, который реализует указанный протокол. |
Транспорт |
getTransport(URLName url)
Получите Транспортный объект для данного URLName. |
PasswordAuthentication |
requestPasswordAuthentication(java.net.InetAddress addr, int port, java.lang.String protocol, java.lang.String prompt, java.lang.String defaultUserName)
Перезвоните к приложению, чтобы получить необходимое имя пользователя и пароль. |
void |
setDebug(boolean debug)
Установите параметр настройки отладки для этого Сеанса. |
void |
setDebugOut(java.io.PrintStream out)
Установите поток, который будет использоваться для отладочной информации для этого сеанса. |
void |
setPasswordAuthentication(URLName url, PasswordAuthentication pw)
Спасите PasswordAuthentication для этого (хранилище или транспорт) URLName. |
void |
setProtocolForAddress(java.lang.String addresstype, java.lang.String protocol)
Установите транспортный протокол значения по умолчанию, чтобы использовать для адресов указанного типа. |
void |
setProvider(Provider provider)
Установите переданного Провайдера, чтобы быть реализацией по умолчанию для протокола в Provider.protocol, переопределяющем любые предыдущие значения. |
Методы, наследованные от class java.lang. Объект |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Деталь метода |
---|
public static Session getInstance(java.util.Properties props, Authenticator authenticator)
props
- Объект свойств, которые содержат соответствующие свойства.authenticator
- Объект аутентификатора, используемый, чтобы перезвонить к приложению, когда имя пользователя и пароль необходимы. Authenticator
public static Session getInstance(java.util.Properties props)
props
- Объект свойств, которые содержат соответствующие свойства.public static Session getDefaultInstance(java.util.Properties props, Authenticator authenticator)
Так как сеанс значения по умолчанию потенциально доступен всему коду, выполняющемуся в той же самой виртуальной машине Java, и сеанс может содержать уязвимую информацию безопасности, такую как имена пользователей и пароли, доступ к сеансу значения по умолчанию ограничивается. Объект Аутентификатора, который должен быть создан вызывающей стороной, используется косвенно, чтобы проверить право доступа. Объект Аутентификатора, который передают в том, когда сеанс создается, по сравнению с объектом Аутентификатора, который передают в к последующим запросам, чтобы получить сеанс значения по умолчанию. Если оба объекта являются тем же самым, или от того же самого ClassLoder, запрос позволяется. Иначе, это отрицается.
Отметьте, что, если объект Аутентификатора, используемый, чтобы создать сеанс, является нулем, любой может получить сеанс значения по умолчанию, передавая в нуле.
Отметьте также, что объект Свойств используется только в первый раз, когда этот метод вызывают, когда новый объект Сеанса создается. Последующие вызовы возвращают объект Сеанса, который создавался первым вызовом, и проигнорируйте переданный объект Свойств. Используйте getInstance
метод, чтобы получить новый Сеанс возражает каждый раз, когда метод вызывают.
В JDK 1.2, дополнительные объекты права доступа могут использоваться, чтобы управлять доступом к сеансу значения по умолчанию.
props
- Объект свойств. Используемый, только если создается новый объект Сеанса.authenticator
- Объект аутентификатора. Используемый, только если создается новый объект Сеанса. Иначе, это должно соответствовать Аутентификатор, используемый, чтобы создать Сеанс. public static Session getDefaultInstance(java.util.Properties props)
Отметьте, что сеанс значения по умолчанию, создаваемый без Аутентификатора, доступен всему коду, выполняющемуся в той же самой виртуальной машине Java, и сеанс может содержать уязвимую информацию безопасности, такую как имена пользователей и пароли.
props
- Объект свойств. Используемый, только если создается новый объект Сеанса.public void setDebug(boolean debug)
Так как параметр настройки отладки может быть включен только после того, как Сеанс был создан, чтобы включить отладку в конструкторе Сеанса, установить свойство mail.debug
в объекте Свойств, который передают в конструктору к истине. Значение mail.debug
свойство используется, чтобы инициализировать флаг отладки на сеанс. Последующие звонки setDebug
метод управляет флагом отладки на сеанс и имеет, не влияют на mail.debug
свойство.
debug
- Параметр настройки отладкиpublic boolean getDebug()
public void setDebugOut(java.io.PrintStream out)
out
нуль, System.out
будет использоваться. Отметьте, что отладочная информация, которая происходит перед любым сеансом, создается, в результате установки mail.debug
системное свойство, будет всегда отправляться System.out
.
out
- PrintStream, чтобы использовать для отладочной информацииpublic java.io.PrintStream getDebugOut()
System.out
возвращается.
public Provider[] getProviders()
public Provider getProvider(java.lang.String protocol) throws NoSuchProviderException
protocol
- Сконфигурированный протокол (то есть smtp, imap, и т.д.) NoSuchProviderException
- Если провайдер для данного протокола не находится.public void setProvider(Provider provider) throws NoSuchProviderException
provider
- В настоящий момент сконфигурированный Провайдер, который будет установлен как значение по умолчанию для протокола NoSuchProviderException
- Если провайдер, которого передают в, недопустим.public Store getStore() throws NoSuchProviderException
mail.store.protocol
свойство определяет требуемый протокол. Если соответствующее Хранит объект, не получается, NoSuchProviderException бросается
NoSuchProviderException
- Если провайдер для данного протокола не находится.public Store getStore(java.lang.String protocol) throws NoSuchProviderException
protocol
- NoSuchProviderException
- Если провайдер для данного протокола не находится.public Store getStore(URLName url) throws NoSuchProviderException
url
- URLName, который представляет требуемое Хранилище NoSuchProviderException
- Если провайдер для данного URLName не находится.getFolder(URLName)
, URLName
public Store getStore(Provider provider) throws NoSuchProviderException
provider
- Провайдер хранилища, который инстанцируют NoSuchProviderException
- Если провайдер для данного Провайдера не находится.public Folder getFolder(URLName url) throws MessagingException
Часть "схемы" строки URL (Отсылают RFC 1738) используется, чтобы определить местоположение протокола Хранилища. Остальная часть строки URL (то есть, "schemepart", согласно RFC 1738) используется тем Хранилищем зависимым от протокола способом, чтобы определить местоположение и инстанцировать соответствующего объекта Папки.
Отметьте, что RFC 1738 также определяет синтаксис для "schemepart" для основанных на IP протоколов (IMAP4, POP3, и т.д.). Провайдеры основанных на IP почтовых Хранилищ должны реализовать тот синтаксис для того, чтобы обратиться к Папкам.
url
- URLName, который представляет требуемую папку NoSuchProviderException
- Если провайдер для данного URLName не находится. MessagingException
- если Папка не могла бы быть расположена или создана.getStore(URLName)
, URLName
public Transport getTransport() throws NoSuchProviderException
mail.transport.protocol
свойство определяет требуемый протокол. Если соответствующий Транспортный объект не может быть получен, MessagingException бросается.
NoSuchProviderException
- Если провайдер не находится.public Transport getTransport(java.lang.String protocol) throws NoSuchProviderException
NoSuchProviderException
- Если провайдер для данного протокола не находится.public Transport getTransport(URLName url) throws NoSuchProviderException
url
- URLName, который представляет требуемый Транспорт NoSuchProviderException
- Если провайдер для данного URLName не находится.URLName
public Transport getTransport(Provider provider) throws NoSuchProviderException
provider
- Транспортный Провайдер, который инстанцируют NoSuchProviderException
- Если провайдер для данного провайдера не находится.public Transport getTransport(Address address) throws NoSuchProviderException
address
- NoSuchProviderException
- Если провайдер для типа Адреса не находитсяAddress
public void setPasswordAuthentication(URLName url, PasswordAuthentication pw)
Это обычно используется только хранилищем или транспортными реализациями, чтобы позволить информации об аутентификации быть совместно использованной среди многократного использования сеанса.
public PasswordAuthentication getPasswordAuthentication(URLName url)
public PasswordAuthentication requestPasswordAuthentication(java.net.InetAddress addr, int port, java.lang.String protocol, java.lang.String prompt, java.lang.String defaultUserName)
Connecting to <protocol> mail service on host <addr>, port <port>. <prompt> User Name: <defaultUserName> Password:
addr
- InetAddress узла. может быть нуль.protocol
- схема протокола (например, imap, pop3, и т.д.)prompt
- любая дополнительная Строка, чтобы показать как часть подсказки; может быть нуль.defaultUserName
- имя пользователя значения по умолчанию. может быть нуль. public java.util.Properties getProperties()
public java.lang.String getProperty(java.lang.String name)
public void addProvider(Provider provider)
provider
- провайдер, чтобы добавитьpublic void setProtocolForAddress(java.lang.String addresstype, java.lang.String protocol)
javamail.default.address.map
или javamail.address.map
файлы или ресурсы.
addresstype
- тип адресаprotocol
- имя протоколаgetTransport(Address)
|
|||||||||
ПРЕДЫДУЩИЙ КЛАСС СЛЕДУЮЩИЙ КЛАСС | ФРЕЙМЫ НИКАКИЕ ФРЕЙМЫ | ||||||||
СВОДКА: ВЛОЖЕННЫЙ | ПОЛЕ | CONSTR | МЕТОД | ДЕТАЛЬ: ПОЛЕ | CONSTR | МЕТОД |
Авторское право © 2009-2011, Oracle Corporation и/или его филиалы. Все права защищены. Использование подвергается
Сгенерированный на 10-February-2011 12:41