changelog
来自「另一 UPNP SDK 支持在UNIX/LINUX上运行。 UPnP是一种网络协」· 代码 · 共 2,164 行 · 第 1/5 页
TXT
2,164 行
(gupnp_control_point_resource_unavailable): * libgupnp/gupnp-service-proxy-private.h: Correct constructor argument order. Plug leak. Update ref count on cached description doc correctly.2007-07-08 Zeeshan Ali <zeenix@gstreamer.net> Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-service-info.c: (get_scpd_url_data_free), (gupnp_service_info_class_init), (gupnp_service_info_get_introspection), (scpd_ready), (got_scpd_url), (gupnp_service_info_get_introspection_async): * libgupnp/gupnp-service-info.h: Use a callback instead of a signal. * tests/test-introspection.c: (interrupt_signal_handler), (got_introspection), (service_proxy_available_cb), (main): - Use the new callback API. - Terminate cleanly on SIGTERM. * tests/test-client.c: (interrupt_signal_handler), (main): * tests/test-server.c: (interrupt_signal_handler), (main): Terminate cleanly on SIGTERM.2007-07-07 Jorn Baayen <jorn@openedhand.com> * doc/gupnp-docs.sgml: * libgupnp/gupnp-types.h: Include gupnp-types in doc TOC.2007-07-07 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-control-point.c: (gupnp_control_point_dispose): * libgupnp/gupnp-service-info.c: (gupnp_service_info_dispose): * libgupnp/gupnp-service-proxy.c: (gupnp_service_proxy_cancel_action): Set message status to SOUP_STATUS_CANCELLED before cancelling. * libgupnp/gupnp-service-proxy.c: Elaborate begin_action() comments.2007-07-07 Jorn Baayen <jorn@openedhand.com> * libgupnp/Makefile.am: * libgupnp/gupnp-service-introspection.c: * libgupnp/gupnp-types-private.h: * libgupnp/gupnp-types.c: (gupnp_type_to_string): * libgupnp/gupnp-types.h: Make private gupnp_data_type_to_gtype(). Add gupnp_value_get_string() macro. * libgupnp/xml-util.c: (xml_util_node_get_content_value): Smarter value transformation like in ServiceProxy.2007-07-07 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-control-point.c: (gupnp_control_point_resource_unavailable): Handle resource-unavailable in the same way.2007-07-07 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-control-point.c: (gupnp_control_point_finalize), (process_service_list), (process_device_list), (description_loaded), (got_description_url): * libgupnp/gupnp-device-proxy-private.h: * libgupnp/gupnp-device-proxy.c: (gupnp_device_proxy_get_device), (gupnp_device_proxy_get_service): * libgupnp/gupnp-device.c: (gupnp_device_get_device), (gupnp_device_get_service), (_gupnp_device_find_element_for_udn): * libgupnp/gupnp-service-private.h: * libgupnp/gupnp-service-proxy-private.h: * libgupnp/gupnp-service-proxy.c: (gupnp_service_proxy_get_subscribed): * libgupnp/gupnp-service.c: (gupnp_service_thaw_notify): Create proxies for all, not just one, matching devices and services.2007-07-07 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-service-info.c: (gupnp_service_info_get_property), (gupnp_service_info_dispose): Rearrange some code.2007-07-07 Jorn Baayen <jorn@openedhand.com> * libgupnp/Makefile.am: * libgupnp/gupnp-service-info.c: * libgupnp/gupnp-service-introspection-private.h: * libgupnp/gupnp-service-introspection.c: * libgupnp/gupnp-service-introspection.h: * libgupnp/gupnp.h: Make introspection constructor private.2007-07-07 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-service-proxy.c: * libgupnp/gupnp-types.c: Handle conversion of strings to GUPnP string-based types.2007-07-06 Zeeshan Ali <zeenix@gstreamer.net> Jorn Baayen <jorn@openedhand.com> * libgupnp/Makefile.am: * libgupnp/gupnp-types.h: * libgupnp/gupnp-types.c: (gupnp_type_to_string), (gupnp_bin_base64_get_type), (gupnp_bin_hex_get_type), (gupnp_date_get_type), (gupnp_date_time_get_type), (gupnp_date_time_tz_get_type), (gupnp_time_get_type), (gupnp_time_tz_get_type), (gupnp_uri_get_type), (gupnp_uuid_get_type), (gupnp_data_type_to_gtype): Introduce new types for some UPnP data types that do not have a direct equivalent in glib. * libgupnp/xml-util.c: (xml_util_get_attribute_contents): * libgupnp/xml-util.h: Add helper function for getting the contents of an attribute. * libgupnp/gupnp-service-introspection.c: (gupnp_service_state_variable_info_free), (gupnp_service_introspection_set_property), (gupnp_service_introspection_finalize), (gupnp_service_introspection_class_init), (set_variable_type), (get_state_variable), (get_action_argument), (contstruct_introspection_info), (gupnp_service_introspection_new): * libgupnp/gupnp-service-introspection.h: - Use the new GUPnP types instead of string type for some UPnP types. - Take a pointer to SCPD xml instead of it's url in the constructor and leave the download of the document to the caller. - Expect documents to specify 'sendEvents' as an attribute of the state variable node. * libgupnp/gupnp-service-info.c: (gupnp_service_info_init), (get_scpd_url_data_free), (gupnp_service_info_dispose), (gupnp_service_info_class_init), (get_scpd), (gupnp_service_info_get_introspection), (scpd_ready), (got_scpd_url), (gupnp_service_info_get_introspection_async): * libgupnp/gupnp-service-info.h: - Handle the SCPD GET for and provide introspection's constructor a pointer to the xml document rather than the SCPD URL. - Provide an asynchronous way of geting the introspection object. * tests/test-introspection.c: (print_state_variables), (got_introspection), (service_proxy_available_cb), (main): Provide a way to specify that the introspection object be created/requested asynchronously through a command-line argument.2007-07-04 Zeeshan Ali <zeenix@gstreamer.net> * libgupnp/gupnp-service-introspection.c: (gupnp_service_state_variable_info_free), (gupnp_service_action_info_free), (gupnp_service_introspection_finalize), (set_variable_limits), (set_variable_type), (get_action_argument), (gupnp_service_action_arg_info_free), (collect_action_names), (collect_action_arguments), (collect_actions), (collect_state_variables), (gupnp_service_introspection_list_action_names), (gupnp_service_introspection_list_action_arguments), (gupnp_service_introspection_list_actions), (gupnp_service_introspection_list_state_variables), (gupnp_service_introspection_get_state_variable): * libgupnp/gupnp-service-introspection.h: * tests/test-introspection.c: (print_action_arguments), (print_actions), (print_state_variables): - Return local copies of data to avoid malloc()s and free()s. - Cache the returned GSLists to avoid allocating the list each time. - return a 'const' from each function and update doc comments to make it very clear to the user that the return data can't be modified or freed. - Rename 'gtype' field to 'type' for consistancy. - Introduce an enum type for the direction of the action argument and use that instead of a string. - Add a function for getting state variable information by name.2007-07-01 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-service-proxy.c: Remove unused includes.2007-07-01 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-device-info.c: (gupnp_device_info_list_device_types), (gupnp_device_info_list_service_types): Use xml_util_get_child_element_content_glib().2007-07-01 Jorn Baayen <jorn@openedhand.com> * doc/gupnp-docs.sgml: * libgupnp/gupnp-control-point.c: * libgupnp/gupnp-device-info.c: (gupnp_device_info_class_init): * libgupnp/gupnp-device-proxy.c: * libgupnp/gupnp-device.c: * libgupnp/gupnp-service-info.c: (gupnp_service_info_class_init): * libgupnp/gupnp-service-introspection.c: * libgupnp/gupnp-service-proxy.c: * libgupnp/gupnp-service.c: Documentation updates.2007-07-01 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-service-introspection.c: (gupnp_service_introspection_finalize), (contstruct_introspection_info): Added small optimization + missing NULL checks.2007-07-01 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-device-info.c: * libgupnp/gupnp-device-proxy.c: (_gupnp_device_proxy_new_from_doc): * libgupnp/gupnp-root-device.c: (gupnp_root_device_constructor): * libgupnp/gupnp-service-info.c: (gupnp_service_info_finalize), (gupnp_service_info_get_udn): * libgupnp/gupnp-service-introspection.c: (set_variable_type), (get_state_variable), (get_action_argument), (get_actions), (get_state_variables): * libgupnp/gupnp-service-proxy.c: (_gupnp_service_proxy_new_from_doc): * libgupnp/xml-util.c: (xml_util_get_element): * libgupnp/xml-util.h: Add more shared XML helpers.2007-07-01 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-device-info.c: (get_property), (gupnp_device_info_get_friendly_name), (gupnp_device_info_get_manufacturer), (gupnp_device_info_get_model_name), (gupnp_device_info_get_model_number): Use get_url_property() for all URL properties.2007-07-01 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-service.c: (gupnp_service_class_init): Use G_TYPE_VALUE for "value" argument on "query-variable" signal.2007-07-01 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-device-info.c: (gupnp_device_info_set_property), (gupnp_device_info_get_property), (gupnp_device_info_finalize), (gupnp_device_info_class_init), (icon_parse): * libgupnp/gupnp-device-info.h: * libgupnp/gupnp-device-proxy.c: (gupnp_device_proxy_get_device), (gupnp_device_proxy_get_service), (_gupnp_device_proxy_new_from_doc), (_gupnp_device_proxy_new_from_element): * libgupnp/gupnp-device.c: (gupnp_device_get_device), (gupnp_device_get_service), (_gupnp_device_new_from_element): * libgupnp/gupnp-service-info.c: (gupnp_service_info_set_property), (gupnp_service_info_get_property), (gupnp_service_info_finalize), (gupnp_service_info_class_init), (get_url_property): * libgupnp/gupnp-service-info.h: * libgupnp/gupnp-service-private.h: * libgupnp/gupnp-service-proxy-private.h: * libgupnp/gupnp-service-proxy.c: (_gupnp_service_proxy_new_from_doc), (_gupnp_service_proxy_new_from_element): * libgupnp/gupnp-service.c: (_gupnp_service_new_from_element): Store URL base as SoupUri, and use description file location as URL base if no base is specified explicitly. * libgupnp/gupnp-root-device.c: (gupnp_root_device_finalize), (gupnp_root_device_set_property), (gupnp_root_device_get_property), (gupnp_root_device_constructor): * libgupnp/gupnp-root-device.h: Remove API for setting URL base as the explicit specification of a URL base is discouraged. Don't autohost description file. * tests/test-server.c: (main): Updated for changed API.2007-06-30 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-service-proxy.c: (gupnp_service_proxy_begin_action): Use M-POST when POST fails.2007-06-30 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-error.h: * libgupnp/gupnp-service.c: (gupnp_service_action_return_error): Fill in description automatically for known error codes. * libgupnp/gupnp-service-proxy.c: (convert_error_code): Handle unknown error codes.2007-06-30 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-error.c: * libgupnp/gupnp-error.h: * libgupnp/gupnp-service-proxy.c: (set_error_literal), (convert_error_code), (gupnp_service_proxy_end_action_valist), (subscription_expire), (subscribe_got_response): * libgupnp/gupnp-service.c: (notify_got_response): More detailed erroring.2007-06-30 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-error.h: * libgupnp/gupnp-service-proxy.c: (gupnp_service_proxy_begin_action_valist), (set_error_literal), (gupnp_service_proxy_end_action_valist), (subscribe_got_response): * libgupnp/gupnp-service.c: (notify_got_response): Don't report GValue errors through GError, and define error codes.2007-06-30 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-service-proxy.c: (gupnp_service_proxy_end_action), (gupnp_service_proxy_end_action_valist): Added set_error_literal() helper function.2007-06-30 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-service-proxy.c: (gupnp_service_proxy_end_action_valist): Handle SOAP Faults. * libgupnp/gupnp-service.c: (gupnp_service_action_set_value), (gupnp_service_action_return_error): Return SOAP Fault in correct format. * tests/test-client.c: (service_proxy_available_cb): Return on error.2007-06-30 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-service-proxy.c: (subscribe_got_response): Remove obsolete comment and correct warning message. * libgupnp/gupnp-service.c: (subscription_response), (subscription_timeout), (parse_timeout), (subscribe), (resubscribe): Return correct timeout to subscriber.2007-06-30 Jorn Baayen <jorn@openedhand.com> * libgupnp/gupnp-control-point.c: (gupnp_control_point_resource_unavailable): Remove unavailable device from correct list!2007-06-29 Jorn Baayen <jorn@openedhand.com> * AUTHORS: Added Zeeshan.2007-06-29 Zeeshan Ali <zeenix@gstreamer.net> reviewed by: Jorn Baayen <jorn@openedhand.com> * libgupnp/Makefile.am: * libgupnp/gupnp.h: * libgupnp/gupnp-service-introspection.c: (gupnp_service_introspection_init), (gupnp_service_introspection_set_property), (gupnp_service_introspection_get_property), (gupnp_service_introspection_dispose), (gupnp_service_introspection_finalize), (gupnp_service_introspection_class_init), (get_scpd), (set_default_value), (set_string_value_limits), (set_value_limit_by_name), (set_variable_limits), (set_variable_type), (get_state_variable), (get_action_argument), (get_action_arguments), (action_argument_list_free), (get_actions), (get_state_variables), (contstruct_introspection_info), (collect_action_names), (collect_action_arguments), (collect_actions), (collect_allowed_values), (copy_state_variable), (collect_state_variables), (gupnp_service_introspection_new), (gupnp_service_introspection_list_action_names), (gupnp_service_introspection_list_action_arguments), (gupnp_service_introspection_list_actions), (gupnp_service_action_arg_info_free), (gupnp_service_action_info_free), (gupnp_service_introspection_list_state_variables), (gupnp_service_state_variable_info_free): * libgupnp/gupnp-service-introspection.h: Add service introspection support. * libgupnp/gupnp-service-info.c: (gupnp_service_proxy_request_introspection): * libgupnp/gupnp-service-info.h: - Add service introspection support. * tests/Makefile.am: * tests/test-introspection.c: (print_action_arguments), (print_actions), (print_state_variables), (service_proxy_available_cb), (service_proxy_
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?