NodeRef::Marshal: различия между версиями

Материал из CAMaaS preliminary wiki
Перейти к навигации Перейти к поиску
(Новая страница: «{{function_begin |OutputStreamRef Marshal(const char* pDomainName, size_type cchDomainName, DefinitionFormat nFormat, OutputStreamRef os) const; //1 OutputStreamR…»)
 
 
(не показаны 2 промежуточные версии этого же участника)
Строка 4: Строка 4:
# Идентификатор предметной области задается строкой заданной длины.
# Идентификатор предметной области задается строкой заданной длины.
# Идентификатор предметной области задается строкой с терминальным нулем.
# Идентификатор предметной области задается строкой с терминальным нулем.
# Идентификатор предметной области задается типом domain_name_type.}}
# Идентификатор предметной области задается типом [[domain_name_type]].}}
{{function_paramlist begin}}
{{function_paramlist begin}}
{{function_paramlist add|pDomainName|Указатель на строку с идентификатором экземпляра подсистемы предметной области, для которой осуществляется маршаллинг.|paramdir=[in]}}
{{function_paramlist add|pDomainName|Указатель на строку с идентификатором экземпляра подсистемы предметной области, для которой осуществляется маршаллинг.|paramdir=[in]}}
Строка 14: Строка 14:
{{function_paramlist end}}
{{function_paramlist end}}
{{function return_value|Адаптер [[OutputStreamRef]], определенный над тем же потоком, что и <tt>os</tt>.}}
{{function return_value|Адаптер [[OutputStreamRef]], определенный над тем же потоком, что и <tt>os</tt>.}}
{{function exceptionlist begin}}
{{function exceptionlist add|[https://www.chusov.org/doxygen/struct_chusov_1_1_exceptions_1_1_chsv_code_exception_templ.html Chusov::Exceptions::ChsvCodeException]|Исключение, соответствующее коду ошибочного завершения, если последний возвращается функцией [[MarshalNode]].}}
{{function exceptionlist add|[https://www.chusov.org/doxygen/struct_chusov_1_1_exceptions_1_1_invalid_parameter_exception.html Chusov::Exceptions::InvalidParameterException]|Длина идентификатора экземпляра подсистемы предметной области превосходит границу 4Гб.}}
{{function exceptionlist end}}
{{function_sa_begin}}
{{function_sa_begin}}
{{function_sa_add|[[MarshalNode]]|{{MarshalNode brief}}}}
{{function_sa_add|[[MarshalNode]]|{{MarshalNode brief}}}}
{{function_sa_add|[[NodeOwn::Demarshal]]|{{NodeOwn::Demarshal brief}}}}
{{function_sa_end}}
{{function_sa_end}}
{{function_end}}
{{function_end}}

Текущая версия на 23:23, 3 января 2018

OutputStreamRef Marshal(const char* pDomainName, size_type cchDomainName, DefinitionFormat nFormat, OutputStreamRef os) const; //1
OutputStreamRef Marshal(const char* pszDomainName, DefinitionFormat nFormat, OutputStreamRef os) const; //2
OutputStreamRef Marshal(const domain_name_type& strDomainName, DefinitionFormat nFormat, OutputStreamRef os) const; //3

Осуществляет маршаллинг узла в выходной поток OutputStreamRef.

  1. Идентификатор предметной области задается строкой заданной длины.
  2. Идентификатор предметной области задается строкой с терминальным нулем.
  3. Идентификатор предметной области задается типом domain_name_type.
Параметры
[in]pDomainNameУказатель на строку с идентификатором экземпляра подсистемы предметной области, для которой осуществляется маршаллинг.
cchDomainNameДлина строки cchDomainName в байтах.
[in]pszDomainNameC-строка с терминальным нулем, задающая идентификатор экземпляра подсистемы предметной области, для которой осуществляется маршаллинг.
strDomainNameC++-строка domain_name_type, задающая идентификатор экземпляра подсистемы предметной области, для которой осуществляется маршаллинг.
nFormatФормат, в соответствии с которым осуществляется маршаллинг. Принимает одно из значений
Символическое имяЦелочисленное значениеОписание
DEFINED_AS_BINARY1Данные запакованы в двоичном виде. См. package.
DEFINED_AS_XML2Данные запакованы в XML виде. Не поддерживается.
osПоток данных, в который осуществляется маршаллинг.
Возвращаемое значение:
Адаптер OutputStreamRef, определенный над тем же потоком, что и os.
Возможные исключения
Chusov::Exceptions::ChsvCodeExceptionИсключение, соответствующее коду ошибочного завершения, если последний возвращается функцией MarshalNode.
Chusov::Exceptions::InvalidParameterExceptionДлина идентификатора экземпляра подсистемы предметной области превосходит границу 4Гб.
См. также
MarshalNodeОсуществляет запись в выходной поток ссылки на внутрипроцессный или удаленный вычислительный узел INode.
NodeOwn::DemarshalСтатическая функция, осуществляющая демаршаллинг узла из входного потока в реализацию INode, ассоциирующая с этой реализацией вновь созданный объект NodeOwn и возвращающая его.