def primitive_wrapper_from_primitive( self, primitive_message: message.Message, ) -> _primitive_wrappers.PrimitiveWrapper: """See json_format PrimitiveHandler.primitive_wrapper_from_primitive.""" if not annotation_utils.is_primitive_type(primitive_message): raise ValueError( f'Not a primitive type: {primitive_message.DESCRIPTOR.full_name!r}.') wrapper_cls = self.get_primitive_wrapper_cls_for_primitive_cls( type(primitive_message)) wrapper_context = _primitive_wrappers.Context( separator_stride_cls=fhirproto_extensions_pb2 .Base64BinarySeparatorStride, code_cls=self.code_cls, default_timezone=_primitive_time_utils.SIMPLE_ZULU) return wrapper_cls.from_primitive(primitive_message, wrapper_context)
def primitive_wrapper_from_json_value( self, json_value: Optional[Any], primitive_cls: Type[message.Message], *, default_timezone: str = _primitive_time_utils.SIMPLE_ZULU ) -> _primitive_wrappers.PrimitiveWrapper: """See json_format PrimitiveHandler.primitive_wrapper_from_json_value.""" if not annotation_utils.is_primitive_type(primitive_cls.DESCRIPTOR): raise ValueError( f'Not a primitive type: {primitive_cls.DESCRIPTOR.full_name!r}.') wrapper_cls = self.get_primitive_wrapper_cls_for_primitive_cls( primitive_cls) wrapper_context = _primitive_wrappers.Context( separator_stride_cls=fhirproto_extensions_pb2 .Base64BinarySeparatorStride, code_cls=self.code_cls, default_timezone=default_timezone) return wrapper_cls.from_json_value(json_value, primitive_cls, wrapper_context)