/* Pubic methods*/ static RygelMediaContainer* rygel_external_content_dir_real_create_root_container (RygelContentDirectory* base) { RygelExternalContentDir * self; ExternalPlugin* _tmp2_; GUPnPRootDevice* _tmp1_; GUPnPRootDevice* _tmp0_; ExternalPlugin* _tmp3_; ExternalPlugin* plugin; RygelMediaContainer* _tmp4_; self = (RygelExternalContentDir*) base; _tmp2_ = NULL; _tmp1_ = NULL; _tmp0_ = NULL; _tmp3_ = NULL; plugin = (_tmp3_ = (_tmp2_ = EXTERNAL_PLUGIN (gupnp_device_info_get_resource_factory ((GUPnPDeviceInfo*) (_tmp1_ = (g_object_get ((GUPnPService*) self, "root-device", &_tmp0_, NULL), _tmp0_)))), (_tmp2_ == NULL) ? NULL : g_object_ref (_tmp2_)), (_tmp1_ == NULL) ? NULL : (_tmp1_ = (g_object_unref (_tmp1_), NULL)), _tmp3_); _tmp4_ = NULL; return (_tmp4_ = (RygelMediaContainer*) rygel_external_container_new ("0", plugin->service_name, plugin->root_object, gupnp_context_get_host_ip (gupnp_service_info_get_context ((GUPnPServiceInfo*) self)), NULL), (plugin == NULL) ? NULL : (plugin = (g_object_unref (plugin), NULL)), _tmp4_); }
static void rygel_external_container_update_container (RygelExternalContainer* self, GError** error) { #line 794 "rygel-external-container.c" char** _tmp1_; gint _obj_paths_size_; gint obj_paths_length1; gint _tmp0_; char** obj_paths; #line 170 "rygel-external-container.vala" g_return_if_fail (self != NULL); #line 171 "rygel-external-container.vala" gee_abstract_collection_clear ((GeeAbstractCollection*) self->priv->containers); #line 804 "rygel-external-container.c" obj_paths = (_tmp1_ = rygel_external_media_container_get_containers (self->actual_container, &_tmp0_), obj_paths_length1 = _tmp0_, _obj_paths_size_ = obj_paths_length1, _tmp1_); { char** obj_path_collection; int obj_path_collection_length1; int obj_path_it; #line 174 "rygel-external-container.vala" obj_path_collection = obj_paths; #line 812 "rygel-external-container.c" obj_path_collection_length1 = obj_paths_length1; for (obj_path_it = 0; obj_path_it < obj_paths_length1; obj_path_it = obj_path_it + 1) { char* obj_path; obj_path = g_strdup (obj_path_collection[obj_path_it]); { char* _tmp2_; RygelExternalContainer* _tmp3_; RygelExternalContainer* container; #line 175 "rygel-external-container.vala" container = (_tmp3_ = rygel_external_container_new (_tmp2_ = g_strconcat ("container:", (const char*) obj_path, NULL), self->service_name, obj_path, self->host_ip, self), _g_free0 (_tmp2_), _tmp3_); #line 181 "rygel-external-container.vala" gee_abstract_collection_add ((GeeAbstractCollection*) self->priv->containers, container); #line 825 "rygel-external-container.c" _g_free0 (obj_path); _g_object_unref0 (container); } } } #line 184 "rygel-external-container.vala" ((RygelMediaContainer*) self)->child_count = gee_collection_get_size ((GeeCollection*) self->priv->containers) + ((gint) rygel_external_media_container_get_item_count (self->actual_container)); #line 833 "rygel-external-container.c" obj_paths = (_vala_array_free (obj_paths, obj_paths_length1, (GDestroyNotify) g_free), NULL); }