public abstract class Context extends Object
Request
операции, чтобы определить объект контекста, в котором строки контекста должны быть разрешены прежде, чем быть отправленным наряду с вызовом запроса. A Context
объект содержит список свойств в форме NamedValue
объекты. Эти свойства представляют информацию о клиенте, среде, или обстоятельствах запроса и обычно являются свойствами, которые могли бы быть неудобными, чтобы передать как параметры. A Context
объект создается первым вызовом ORB
метод get_default_context
и затем вызов метода create_child
на контексте значения по умолчанию.
Каждое свойство в a Context
объект представляется a NamedValue
объект. Имя свойства содержится в NamedValue
объект name
поле, и значение, связанное с именем, содержатся в Any
объект, который был присвоен NamedValue
объект value
поле.
Context
свойства могут представить часть среды клиента или приложения, которая предназначается, чтобы быть распространенной к (и сделанной неявно частью) среда сервера. (Примерами могла бы быть информация об идентификаторе или пользовательской настройке окна). Как только сервер был вызван (то есть, после того, как свойства распространяются), сервер может запросить Context
объект для этих свойств, используя метод get_values
.
Когда объявление операции будет включать пункт контекста, тупикам и скелетам добавят дополнительный параметр для контекста. Когда вызов работы происходит, ШАР вызывает свойства, которые назвали в определении работы в IDL и которые присутствуют в клиенте Context
объект, который будет обеспечен в Context
объектный параметр к вызванному методу.
Context
у имен свойства (которые являются строками) обычно есть форма идентификатора IDL OMG или серия идентификаторов IDL OMG, разделенных периодами. Образец имени свойства контекста является или именем свойства или именем свойства, сопровождаемым синглом "* ". Образец имени свойства без запаздывания "*", как говорят, соответствует только непосредственно. Образец имени свойства формы" <имя> *" соответствует любое имя свойства, которое запускается с <имени> и продолжается с нулем или большим количеством дополнительных символов.
Образцы имени свойства используются в пункте контекста определения работы и в качестве параметра для метода Context.get_values
.
Context
объекты могут быть "объединены в цепочку" вместе, чтобы достигнуть определенного принимающего значение по умолчанию поведения. A Context
объект создается с методом create_child
будет объединен в цепочку к его родителю ( Context
возразите, что создал это), и это означает, что родитель будет искаться после дочернего элемента в поиске имен свойства.
Свойства определяются в детали Context
возразите эффективно переопределяют те свойства в следующем более высоком уровне. Контекст, используемый в поиске свойств, может быть ограничен, определяя запускающийся контекст и при использовании флага CTX_RESTRICT_SCOPE
вызывая метод get_values
.
A Context
объект может быть назван по имени в целях определить запускающийся контекст поиска.
Конструктор и Описание |
---|
Context() |
Модификатор и Тип | Метод и Описание |
---|---|
abstract String |
context_name()
Получает имя этого
Context объект. |
abstract Context |
create_child(String child_ctx_name)
Создает a
Context объект с данной строкой как ее имя и с этим Context объектный набор как его родитель. |
abstract void |
delete_values(String propname)
Удаляет из этого
Context возразите NamedValue объект (ы), чей name поле соответствует данное имя свойства. |
abstract NVList |
get_values(String start_scope, int op_flags, String pattern)
Получает
NamedValue объекты, чей name поле соответствует образец имени или имя. |
abstract Context |
parent()
Получает родителя этого
Context объект. |
abstract void |
set_one_value(String propname, Any propvalue)
Создает a
NamedValue возразите и добавляет это к этому Context объект. |
abstract void |
set_values(NVList values)
Я Наборы одни или более значений свойств в этом
Context объект. |
public abstract String context_name()
Context
объект.Context
объектpublic abstract Context parent()
Context
объект.Context
объект, который является родителем этого Context
объектpublic abstract Context create_child(String child_ctx_name)
Context
объект с данной строкой как ее имя и с этим Context
объектный набор как его родитель. Новое Context
объект объединяется в цепочку в его родителя Context
объект. Это означает, что в поиске соответствия имен свойства, если соответствие не находится в этом контексте, поиск будет продолжаться в родителе. Если это не будет успешно, то поиск будет продолжаться в прародителе, если будет один и так далее.
child_ctx_name
- String
объект, который будет установлен как имя нового Context
объектContext
объект инициализируется с указанным именемpublic abstract void set_one_value(String propname, Any propvalue)
NamedValue
возразите и добавляет это к этому Context
объект. name
поле нового NamedValue
объект устанавливается в данную строку, value
поле устанавливается в данный Any
объект, и flags
поле обнуляется.propname
- имя свойства, которое будет установленоpropvalue
- Any
возразите, в который будет установлено значение свойства. Any
объект value
поле содержит значение, которое будет связано с данным propname; kind
поле должно быть установлено в TCKind.tk_string
.public abstract void set_values(NVList values)
Context
объект. NVList
предоставленный этому методу содержит один или больше NamedValue
объекты. В каждом NamedValue
объект, name
поле содержит имя свойства, и flags
поле должно быть обнулено. NamedValue
объект value
поле содержит Any
объект, который, поочередно, содержит значение для свойства. Так как значение всегда является строкой, Any
объект должен иметь kind
поле TypeCode
набор к TCKind.tk_string
.values
- NVList, содержащий имена свойства и присваиваемые значения, которые будут установленыget_values(java.lang.String, int, java.lang.String)
, NamedValue
, Any
public abstract void delete_values(String propname)
Context
возразите NamedValue
объект (ы), чей name
поле соответствует данное имя свойства. Если String
объект, предоставленный для propname
имеет запаздывающий подстановочный символ (" * "), тогда все NamedValue
объекты, чей name
полевое соответствие будет удалено. Контекст поиска всегда ограничивается этим Context
объект. Если никакое свойство соответствия не находится, исключение возвращается.
propname
- имя свойства, которое будет удаленоpublic abstract NVList get_values(String start_scope, int op_flags, String pattern)
NamedValue
объекты, чей name
поле соответствует образец имени или имя. Этот метод учитывает подстановочные поискы, что означает, что могут быть многократные соответствия и поэтому многократные возвращенные значения. Если свойство не находится на обозначенном уровне, поиск продолжает дерево объекта контекста, пока соответствие не находится или все Context
объекты в цепочке были исчерпаны. Если никакое соответствие не находится, ошибка возвращается, и никакой список свойств не возвращается.
start_scope
- a String
объект, указывающий на уровень объекта контекста, на котором можно инициировать поиск указанных свойств (например, "_USER", "_GROUP", "_SYSTEM"). Допустимые имена контекста специфичны для реализации. Если имя контекста опускается, поиск начинается с указанного объекта контекста. Если указанное имя контекста не находится, исключение возвращается.op_flags
- флаг работы. Один флаг, который может быть определен, CTX_RESTRICT_SCOPE
. Если этот флаг определяется, поиск ограничивается указанным start_scope
или это Context
объект.pattern
- имя свойства, значения которого должны быть получены. pattern
может быть имя или имя с запаздывающим подстановочным символом (" * ").NVList
содержа все значения свойств (в форме NamedValue
объекты), чье связанное имя свойства соответствует образец имени или имяset_values(org.omg.CORBA.NVList)
, NamedValue
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92