renatofilho@320: #include renatofilho@320: #include "gmyth.h" renatofilho@320: renatofilho@320: int renatofilho@320: main (int args, const char **argv) renatofilho@320: { renatofilho@320: const char *uri = argv[1]; renatofilho@320: GMythURI *gmyth_uri = NULL; renatofilho@320: gboolean res; renatofilho@320: GMythBackendInfo *backend_info; renatofilho@320: g_type_init (); renatofilho@320: g_thread_init (NULL); renatofilho@320: renatofilho@320: backend_info = gmyth_backend_info_new (); renatofilho@320: gmyth_uri = gmyth_uri_new_with_value (uri); renatofilho@320: renatofilho@320: gmyth_backend_info_set_hostname (backend_info, gmyth_uri_get_host (gmyth_uri)); renatofilho@320: gmyth_backend_info_set_port (backend_info, gmyth_uri_get_port (gmyth_uri)); renatofilho@320: renatofilho@320: res = gmyth_util_file_exists (backend_info, uri); renatofilho@320: if (res == FALSE) { renatofilho@320: g_debug ("file not exists"); renatofilho@320: return -1; renatofilho@320: } renatofilho@320: GMythFileTransfer *file_transfer = gmyth_file_transfer_new (); renatofilho@320: GString *hostname = g_string_new (uri); renatofilho@320: res = gmyth_file_transfer_open (file_transfer, hostname); renatofilho@320: if (res == FALSE) { renatofilho@320: g_debug ("Fail to open server"); renatofilho@320: return -1; renatofilho@320: } renatofilho@320: renatofilho@320: guint64 filesize = gmyth_file_transfer_get_filesize (file_transfer); renatofilho@320: if (filesize <= 0) { renatofilho@320: g_debug ("filesize is 0"); renatofilho@320: return -1; renatofilho@320: } renatofilho@320: renatofilho@320: GByteArray *data = g_byte_array_new (); renatofilho@320: guint num = gmyth_file_transfer_read (file_transfer, data, filesize, FALSE); renatofilho@320: g_debug ("read %d bytes", num); renatofilho@320: renatofilho@320: g_byte_array_free (data, TRUE); renatofilho@320: g_object_unref (file_transfer); renatofilho@320: g_object_unref (gmyth_uri); renatofilho@320: g_string_free (hostname, TRUE); renatofilho@320: renatofilho@320: return 0; renatofilho@320: }