branches/gmyth-0.1b/tests/main.c
author rosfran
Fri Feb 09 20:42:28 2007 +0000 (2007-02-09)
branchtrunk
changeset 346 4ba962630375
permissions -rw-r--r--
[svn r348] Fixes.
renatofilho@320
     1
#include <glib-object.h>
renatofilho@320
     2
#include "gmyth.h"
renatofilho@320
     3
renatofilho@320
     4
int
renatofilho@320
     5
main (int args, const char **argv)
renatofilho@320
     6
{
renatofilho@320
     7
    const char *uri = argv[1];
renatofilho@320
     8
    GMythURI *gmyth_uri = NULL;
renatofilho@320
     9
    gboolean res;
renatofilho@320
    10
    GMythBackendInfo *backend_info;
renatofilho@320
    11
    g_type_init ();
renatofilho@320
    12
    g_thread_init (NULL);
renatofilho@320
    13
renatofilho@320
    14
    backend_info = gmyth_backend_info_new ();
renatofilho@320
    15
    gmyth_uri = gmyth_uri_new_with_value (uri);
renatofilho@320
    16
renatofilho@320
    17
    gmyth_backend_info_set_hostname (backend_info, gmyth_uri_get_host (gmyth_uri));
renatofilho@320
    18
    gmyth_backend_info_set_port (backend_info, gmyth_uri_get_port (gmyth_uri));
renatofilho@320
    19
    
renatofilho@320
    20
    res = gmyth_util_file_exists (backend_info, uri);
renatofilho@320
    21
    if (res == FALSE) {
renatofilho@320
    22
        g_debug ("file not exists");
renatofilho@320
    23
        return -1;
renatofilho@320
    24
    }
renatofilho@320
    25
    GMythFileTransfer *file_transfer = gmyth_file_transfer_new ();
renatofilho@320
    26
    GString *hostname = g_string_new (uri);
renatofilho@320
    27
    res = gmyth_file_transfer_open (file_transfer, hostname);
renatofilho@320
    28
    if (res == FALSE) {
renatofilho@320
    29
        g_debug ("Fail to open server");
renatofilho@320
    30
        return  -1;
renatofilho@320
    31
    }
renatofilho@320
    32
renatofilho@320
    33
    guint64 filesize = gmyth_file_transfer_get_filesize (file_transfer);
renatofilho@320
    34
    if (filesize <= 0) {
renatofilho@320
    35
        g_debug ("filesize is 0");
renatofilho@320
    36
        return -1;
renatofilho@320
    37
    }
renatofilho@320
    38
renatofilho@320
    39
    GByteArray *data = g_byte_array_new ();
renatofilho@320
    40
    guint num = gmyth_file_transfer_read (file_transfer, data, filesize, FALSE);
renatofilho@320
    41
    g_debug ("read %d bytes", num);
renatofilho@320
    42
renatofilho@320
    43
    g_byte_array_free (data, TRUE);
renatofilho@320
    44
    g_object_unref (file_transfer);
renatofilho@320
    45
    g_object_unref (gmyth_uri);
renatofilho@320
    46
    g_string_free (hostname, TRUE);
renatofilho@320
    47
renatofilho@320
    48
    return 0;    
renatofilho@320
    49
}