gio2 2.1.0 → 2.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Rakefile +26 -9
- data/ext/gio2/extconf.rb +38 -28
- data/ext/gio2/rb-gio2-pollable-source.c +59 -0
- data/ext/gio2/{rbgiofilteroutputstream.c → rb-gio2.c} +9 -5
- data/ext/gio2/{gio2.c → rb-gio2.h} +5 -10
- data/extconf.rb +22 -6
- data/lib/gio2.rb +38 -143
- data/lib/gio2/deprecated.rb +16 -0
- data/lib/gio2/inet-address.rb +33 -0
- data/lib/gio2/input-stream.rb +39 -0
- data/lib/gio2/loader.rb +244 -0
- data/lib/gio2/output-stream.rb +24 -0
- data/lib/gio2/pollable-input-stream.rb +51 -0
- data/lib/gio2/pollable-output-stream.rb +32 -0
- data/lib/gio2/resources.rb +62 -0
- data/test/fixture/content-type/x-content/unix-software/autorun.sh +1 -0
- data/test/fixture/resource/Rakefile +32 -0
- data/test/fixture/resource/logo.png +0 -0
- data/test/fixture/resource/ruby-gio2.gresource +0 -0
- data/test/fixture/resource/ruby-gio2.gresource.xml +6 -0
- data/test/gio2-test-utils.rb +21 -0
- data/test/gio2-test-utils/fixture.rb +24 -0
- data/test/gio2-test-utils/socket-client.rb +59 -0
- data/test/run-test.rb +45 -9
- data/test/test-buffered-input-stream.rb +23 -0
- data/test/test-charset-converter.rb +23 -0
- data/test/test-content-type.rb +31 -0
- data/test/test-data-input-stream.rb +21 -0
- data/test/test-file-enumerator.rb +26 -0
- data/test/test-file-monitor.rb +33 -0
- data/test/test-file.rb +28 -0
- data/test/test-inet-address.rb +34 -0
- data/test/test-input-stream.rb +36 -0
- data/test/test-output-stream.rb +39 -0
- data/test/test-pollable-input-stream.rb +54 -0
- data/test/test-pollable-output-stream.rb +53 -0
- data/test/test-resources.rb +58 -0
- metadata +49 -107
- data/README +0 -34
- data/ext/gio2/depend +0 -11
- data/ext/gio2/gio2.def +0 -2
- data/ext/gio2/gio2.h +0 -30
- data/ext/gio2/rbgio.c +0 -133
- data/ext/gio2/rbgio2.h +0 -158
- data/ext/gio2/rbgio2conversions.h +0 -154
- data/ext/gio2/rbgio2private.h +0 -148
- data/ext/gio2/rbgioappinfo.c +0 -317
- data/ext/gio2/rbgioapplaunchcontext.c +0 -81
- data/ext/gio2/rbgioasyncinitable.c +0 -246
- data/ext/gio2/rbgioasyncresult.c +0 -41
- data/ext/gio2/rbgiobufferedinputstream.c +0 -167
- data/ext/gio2/rbgiobufferedoutputstream.c +0 -50
- data/ext/gio2/rbgiocancellable.c +0 -180
- data/ext/gio2/rbgiocharsetconverter.c +0 -57
- data/ext/gio2/rbgiocontenttype.c +0 -131
- data/ext/gio2/rbgioconverter.c +0 -113
- data/ext/gio2/rbgioconverterinputstream.c +0 -43
- data/ext/gio2/rbgioconverteroutputstream.c +0 -43
- data/ext/gio2/rbgiodatainputstream.c +0 -309
- data/ext/gio2/rbgiodataoutputstream.c +0 -186
- data/ext/gio2/rbgiodesktopappinfo.c +0 -87
- data/ext/gio2/rbgiodrive.c +0 -266
- data/ext/gio2/rbgioemblem.c +0 -52
- data/ext/gio2/rbgioemblemedicon.c +0 -65
- data/ext/gio2/rbgiofile.c +0 -2045
- data/ext/gio2/rbgiofileattribute.c +0 -114
- data/ext/gio2/rbgiofileattributeinfo.c +0 -86
- data/ext/gio2/rbgiofileattributeinfolist.c +0 -108
- data/ext/gio2/rbgiofileattributematcher.c +0 -95
- data/ext/gio2/rbgiofiledescriptorbased.c +0 -45
- data/ext/gio2/rbgiofileenumerator.c +0 -166
- data/ext/gio2/rbgiofileicon.c +0 -41
- data/ext/gio2/rbgiofileinfo.c +0 -617
- data/ext/gio2/rbgiofileinputstream.c +0 -91
- data/ext/gio2/rbgiofileiostream.c +0 -98
- data/ext/gio2/rbgiofilemonitor.c +0 -46
- data/ext/gio2/rbgiofilenamecompleter.c +0 -73
- data/ext/gio2/rbgiofileoutputstream.c +0 -98
- data/ext/gio2/rbgiofilterinputstream.c +0 -28
- data/ext/gio2/rbgioicon.c +0 -69
- data/ext/gio2/rbgioinetaddress.c +0 -118
- data/ext/gio2/rbgioinetsocketaddress.c +0 -41
- data/ext/gio2/rbgioinitable.c +0 -199
- data/ext/gio2/rbgioinputstream.c +0 -341
- data/ext/gio2/rbgioio.c +0 -73
- data/ext/gio2/rbgioiomodule.c +0 -45
- data/ext/gio2/rbgioiomodules.c +0 -47
- data/ext/gio2/rbgioioscheduler.c +0 -102
- data/ext/gio2/rbgioioschedulerjob.c +0 -121
- data/ext/gio2/rbgioiostream.c +0 -107
- data/ext/gio2/rbgioloadableicon.c +0 -92
- data/ext/gio2/rbgiomemoryinputstream.c +0 -67
- data/ext/gio2/rbgiomemoryoutputstream.c +0 -44
- data/ext/gio2/rbgiomount.c +0 -286
- data/ext/gio2/rbgiomountoperation.c +0 -53
- data/ext/gio2/rbgionetworkaddress.c +0 -59
- data/ext/gio2/rbgionetworkservice.c +0 -45
- data/ext/gio2/rbgiooutputstream.c +0 -331
- data/ext/gio2/rbgioresolver.c +0 -230
- data/ext/gio2/rbgioseekable.c +0 -91
- data/ext/gio2/rbgiosimpleasyncresult.c +0 -152
- data/ext/gio2/rbgiosocket.c +0 -390
- data/ext/gio2/rbgiosocketaddress.c +0 -34
- data/ext/gio2/rbgiosocketaddressenumerator.c +0 -83
- data/ext/gio2/rbgiosocketclient.c +0 -207
- data/ext/gio2/rbgiosocketconnectable.c +0 -41
- data/ext/gio2/rbgiosocketconnection.c +0 -66
- data/ext/gio2/rbgiosocketconnectionfactory.c +0 -39
- data/ext/gio2/rbgiosocketcontrolmessage.c +0 -82
- data/ext/gio2/rbgiosocketlistener.c +0 -246
- data/ext/gio2/rbgiosocketservice.c +0 -66
- data/ext/gio2/rbgiosrvtarget.c +0 -76
- data/ext/gio2/rbgiotcpconnection.c +0 -28
- data/ext/gio2/rbgiothemedicon.c +0 -83
- data/ext/gio2/rbgiothreadedsocketservice.c +0 -43
- data/ext/gio2/rbgiotlscertificate.c +0 -89
- data/ext/gio2/rbgiounixconnection.c +0 -71
- data/ext/gio2/rbgiounixfdlist.c +0 -115
- data/ext/gio2/rbgiounixfdmessage.c +0 -74
- data/ext/gio2/rbgiounixinputstream.c +0 -51
- data/ext/gio2/rbgiounixmount.c +0 -164
- data/ext/gio2/rbgiounixmountmonitor.c +0 -65
- data/ext/gio2/rbgiounixmountpoint.c +0 -136
- data/ext/gio2/rbgiounixmountpoints.c +0 -58
- data/ext/gio2/rbgiounixmounts.c +0 -58
- data/ext/gio2/rbgiounixoutputstream.c +0 -51
- data/ext/gio2/rbgiounixsocketaddress.c +0 -69
- data/ext/gio2/rbgiovfs.c +0 -84
- data/ext/gio2/rbgiovolume.c +0 -193
- data/ext/gio2/rbgiovolumemonitor.c +0 -77
- data/ext/gio2/rbgiozlibcompressor.c +0 -52
- data/ext/gio2/rbgiozlibdecompressor.c +0 -45
- data/ext/gio2/util.c +0 -303
- data/test/test_bufferedinputstream.rb +0 -9
- data/test/test_charsetconverter.rb +0 -9
- data/test/test_datainputstream.rb +0 -7
- data/test/test_fileenumerator.rb +0 -8
- data/test/test_filemonitor.rb +0 -17
- data/test/test_inetaddress.rb +0 -8
data/ext/gio2/rbgiounixfdlist.c
DELETED
@@ -1,115 +0,0 @@
|
|
1
|
-
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
|
-
/*
|
3
|
-
* Copyright (C) 2011 Ruby-GNOME2 Project Team
|
4
|
-
* Copyright (C) 2008-2009 Ruby-GNOME2 Project Team
|
5
|
-
*
|
6
|
-
* This library is free software; you can redistribute it and/or
|
7
|
-
* modify it under the terms of the GNU Lesser General Public
|
8
|
-
* License as published by the Free Software Foundation; either
|
9
|
-
* version 2.1 of the License, or (at your option) any later version.
|
10
|
-
*
|
11
|
-
* This library is distributed in the hope that it will be useful,
|
12
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
13
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
14
|
-
* Lesser General Public License for more details.
|
15
|
-
*
|
16
|
-
* You should have received a copy of the GNU Lesser General Public
|
17
|
-
* License along with this library; if not, write to the Free Software
|
18
|
-
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
19
|
-
* MA 02110-1301 USA
|
20
|
-
*/
|
21
|
-
|
22
|
-
#include "rbgio2private.h"
|
23
|
-
|
24
|
-
#ifdef HAVE_GIO_UNIX
|
25
|
-
#include <gio/gunixfdlist.h>
|
26
|
-
|
27
|
-
#define RG_TARGET_NAMESPACE cUnixFDList
|
28
|
-
#define _SELF(value) RVAL2GUNIXFDLIST(value)
|
29
|
-
|
30
|
-
static VALUE
|
31
|
-
rg_initialize(int argc, VALUE *argv, VALUE self)
|
32
|
-
{
|
33
|
-
VALUE rbfds;
|
34
|
-
long n;
|
35
|
-
gint *fds;
|
36
|
-
GUnixFDList *list;
|
37
|
-
|
38
|
-
rb_scan_args(argc, argv, "0*", &rbfds);
|
39
|
-
fds = RVAL2FDS(rbfds, n);
|
40
|
-
if (n == 0) {
|
41
|
-
G_INITIALIZE(self, g_unix_fd_list_new());
|
42
|
-
return Qnil;
|
43
|
-
}
|
44
|
-
|
45
|
-
list = g_unix_fd_list_new_from_array(fds, n);
|
46
|
-
|
47
|
-
g_free(fds);
|
48
|
-
|
49
|
-
G_INITIALIZE(self, list);
|
50
|
-
|
51
|
-
return Qnil;
|
52
|
-
}
|
53
|
-
|
54
|
-
static VALUE
|
55
|
-
rg_length(VALUE self)
|
56
|
-
{
|
57
|
-
return GINT2RVAL(g_unix_fd_list_get_length(_SELF(self)));
|
58
|
-
}
|
59
|
-
|
60
|
-
static VALUE
|
61
|
-
rg_get(VALUE self, VALUE index)
|
62
|
-
{
|
63
|
-
GError *error = NULL;
|
64
|
-
gint fd;
|
65
|
-
|
66
|
-
fd = g_unix_fd_list_get(_SELF(self), RVAL2GINT(index), &error);
|
67
|
-
if (fd == -1)
|
68
|
-
rbgio_raise_error(error);
|
69
|
-
|
70
|
-
/* TODO: This fd must be closed properly. How do we deal with that? */
|
71
|
-
return FD2RVAL(fd);
|
72
|
-
}
|
73
|
-
|
74
|
-
static VALUE
|
75
|
-
rg_peek_fds(VALUE self)
|
76
|
-
{
|
77
|
-
return GFDS2ARY(g_unix_fd_list_peek_fds(_SELF(self), NULL));
|
78
|
-
}
|
79
|
-
|
80
|
-
static VALUE
|
81
|
-
rg_steal_fds(VALUE self)
|
82
|
-
{
|
83
|
-
return GFDS2ARY_FREE(g_unix_fd_list_steal_fds(_SELF(self), NULL));
|
84
|
-
}
|
85
|
-
|
86
|
-
static VALUE
|
87
|
-
rg_append(VALUE self, VALUE fd)
|
88
|
-
{
|
89
|
-
GError *error = NULL;
|
90
|
-
int index;
|
91
|
-
|
92
|
-
index = g_unix_fd_list_append(_SELF(self), RVAL2FD(fd), &error);
|
93
|
-
if (index == -1)
|
94
|
-
rbgio_raise_error(error);
|
95
|
-
|
96
|
-
return self;
|
97
|
-
}
|
98
|
-
#endif
|
99
|
-
|
100
|
-
void
|
101
|
-
Init_gunixfdlist(G_GNUC_UNUSED VALUE mGio)
|
102
|
-
{
|
103
|
-
#ifdef HAVE_GIO_UNIX
|
104
|
-
VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(G_TYPE_UNIX_FD_LIST, "UnixFDList", mGio);
|
105
|
-
|
106
|
-
RG_DEF_METHOD(initialize, -1);
|
107
|
-
RG_DEF_METHOD(length, 0);
|
108
|
-
RG_DEF_METHOD(get, 1);
|
109
|
-
RG_DEF_ALIAS("[]", "get");
|
110
|
-
RG_DEF_METHOD(peek_fds, 0);
|
111
|
-
RG_DEF_METHOD(steal_fds, 0);
|
112
|
-
RG_DEF_METHOD(append, 1);
|
113
|
-
RG_DEF_ALIAS("<<", "append");
|
114
|
-
#endif
|
115
|
-
}
|
@@ -1,74 +0,0 @@
|
|
1
|
-
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
|
-
/*
|
3
|
-
* Copyright (C) 2011 Ruby-GNOME2 Project Team
|
4
|
-
* Copyright (C) 2008-2009 Ruby-GNOME2 Project Team
|
5
|
-
*
|
6
|
-
* This library is free software; you can redistribute it and/or
|
7
|
-
* modify it under the terms of the GNU Lesser General Public
|
8
|
-
* License as published by the Free Software Foundation; either
|
9
|
-
* version 2.1 of the License, or (at your option) any later version.
|
10
|
-
*
|
11
|
-
* This library is distributed in the hope that it will be useful,
|
12
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
13
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
14
|
-
* Lesser General Public License for more details.
|
15
|
-
*
|
16
|
-
* You should have received a copy of the GNU Lesser General Public
|
17
|
-
* License along with this library; if not, write to the Free Software
|
18
|
-
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
19
|
-
* MA 02110-1301 USA
|
20
|
-
*/
|
21
|
-
|
22
|
-
#include "rbgio2private.h"
|
23
|
-
|
24
|
-
#ifdef HAVE_GIO_UNIX
|
25
|
-
#include <gio/gunixfdmessage.h>
|
26
|
-
|
27
|
-
#define RG_TARGET_NAMESPACE cUnixFDMessage
|
28
|
-
#define _SELF(value) RVAL2GUNIXFDMESSAGE(value)
|
29
|
-
|
30
|
-
static VALUE
|
31
|
-
rg_initialize(int argc, VALUE *argv, VALUE self)
|
32
|
-
{
|
33
|
-
VALUE fd_list;
|
34
|
-
GSocketControlMessage *message;
|
35
|
-
|
36
|
-
rb_scan_args(argc, argv, "01", &fd_list);
|
37
|
-
message = NIL_P(fd_list) ?
|
38
|
-
g_unix_fd_message_new() :
|
39
|
-
g_unix_fd_message_new_with_fd_list(RVAL2GUNIXFDLIST(fd_list));
|
40
|
-
G_INITIALIZE(self, message);
|
41
|
-
|
42
|
-
return Qnil;
|
43
|
-
}
|
44
|
-
|
45
|
-
static VALUE
|
46
|
-
rg_append_fd(VALUE self, VALUE fd)
|
47
|
-
{
|
48
|
-
GError *error = NULL;
|
49
|
-
|
50
|
-
if (!g_unix_fd_message_append_fd(_SELF(self), RVAL2FD(fd), &error))
|
51
|
-
rbgio_raise_error(error);
|
52
|
-
|
53
|
-
return self;
|
54
|
-
}
|
55
|
-
|
56
|
-
static VALUE
|
57
|
-
rg_steal_fds(VALUE self)
|
58
|
-
{
|
59
|
-
return GFDS2ARY_FREE(g_unix_fd_message_steal_fds(_SELF(self), NULL));
|
60
|
-
}
|
61
|
-
#endif
|
62
|
-
|
63
|
-
void
|
64
|
-
Init_gunixfdmessage(G_GNUC_UNUSED VALUE mGio)
|
65
|
-
{
|
66
|
-
#ifdef HAVE_GIO_UNIX
|
67
|
-
VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(G_TYPE_UNIX_FD_MESSAGE, "UnixFDMessage", mGio);
|
68
|
-
|
69
|
-
RG_DEF_METHOD(initialize, -1);
|
70
|
-
RG_DEF_METHOD(append_fd, 1);
|
71
|
-
RG_DEF_ALIAS("<<", "append_fd");
|
72
|
-
RG_DEF_METHOD(steal_fds, 0);
|
73
|
-
#endif
|
74
|
-
}
|
@@ -1,51 +0,0 @@
|
|
1
|
-
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
|
-
/*
|
3
|
-
* Copyright (C) 2011 Ruby-GNOME2 Project Team
|
4
|
-
* Copyright (C) 2008-2009 Ruby-GNOME2 Project Team
|
5
|
-
*
|
6
|
-
* This library is free software; you can redistribute it and/or
|
7
|
-
* modify it under the terms of the GNU Lesser General Public
|
8
|
-
* License as published by the Free Software Foundation; either
|
9
|
-
* version 2.1 of the License, or (at your option) any later version.
|
10
|
-
*
|
11
|
-
* This library is distributed in the hope that it will be useful,
|
12
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
13
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
14
|
-
* Lesser General Public License for more details.
|
15
|
-
*
|
16
|
-
* You should have received a copy of the GNU Lesser General Public
|
17
|
-
* License along with this library; if not, write to the Free Software
|
18
|
-
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
19
|
-
* MA 02110-1301 USA
|
20
|
-
*/
|
21
|
-
|
22
|
-
#include "rbgio2private.h"
|
23
|
-
|
24
|
-
#ifdef HAVE_GIO_UNIX
|
25
|
-
#include <gio/gunixinputstream.h>
|
26
|
-
|
27
|
-
#define RG_TARGET_NAMESPACE cUnixInputStream
|
28
|
-
#define _SELF(value) RVAL2GUNIXINPUTSTREAM(value)
|
29
|
-
|
30
|
-
static VALUE
|
31
|
-
rg_initialize(int argc, VALUE *argv, VALUE self)
|
32
|
-
{
|
33
|
-
VALUE fd, close_fd;
|
34
|
-
|
35
|
-
rb_scan_args(argc, argv, "11", &fd, &close_fd);
|
36
|
-
G_INITIALIZE(self, g_unix_input_stream_new(RVAL2FD(fd),
|
37
|
-
RVAL2CBOOL(close_fd)));
|
38
|
-
|
39
|
-
return Qnil;
|
40
|
-
}
|
41
|
-
#endif
|
42
|
-
|
43
|
-
void
|
44
|
-
Init_gunixinputstream(G_GNUC_UNUSED VALUE mGio)
|
45
|
-
{
|
46
|
-
#ifdef HAVE_GIO_UNIX
|
47
|
-
VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(G_TYPE_UNIX_INPUT_STREAM, "UnixInputStream", mGio);
|
48
|
-
|
49
|
-
RG_DEF_METHOD(initialize, -1);
|
50
|
-
#endif
|
51
|
-
}
|
data/ext/gio2/rbgiounixmount.c
DELETED
@@ -1,164 +0,0 @@
|
|
1
|
-
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
|
-
/*
|
3
|
-
* Copyright (C) 2011 Ruby-GNOME2 Project Team
|
4
|
-
* Copyright (C) 2008-2009 Ruby-GNOME2 Project Team
|
5
|
-
*
|
6
|
-
* This library is free software; you can redistribute it and/or
|
7
|
-
* modify it under the terms of the GNU Lesser General Public
|
8
|
-
* License as published by the Free Software Foundation; either
|
9
|
-
* version 2.1 of the License, or (at your option) any later version.
|
10
|
-
*
|
11
|
-
* This library is distributed in the hope that it will be useful,
|
12
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
13
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
14
|
-
* Lesser General Public License for more details.
|
15
|
-
*
|
16
|
-
* You should have received a copy of the GNU Lesser General Public
|
17
|
-
* License along with this library; if not, write to the Free Software
|
18
|
-
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
19
|
-
* MA 02110-1301 USA
|
20
|
-
*/
|
21
|
-
|
22
|
-
#include "rbgio2private.h"
|
23
|
-
|
24
|
-
#ifdef HAVE_GIO_UNIX
|
25
|
-
#include <gio/gunixmounts.h>
|
26
|
-
|
27
|
-
#define RG_TARGET_NAMESPACE cUnixMount
|
28
|
-
|
29
|
-
static GUnixMountEntry *
|
30
|
-
unixmount_copy(const GUnixMountEntry *mount)
|
31
|
-
{
|
32
|
-
return (GUnixMountEntry *)mount;
|
33
|
-
}
|
34
|
-
|
35
|
-
static GType
|
36
|
-
g_unix_mount_entry_get_type(void)
|
37
|
-
{
|
38
|
-
static GType our_type = 0;
|
39
|
-
|
40
|
-
if (our_type == 0)
|
41
|
-
our_type = g_boxed_type_register_static("GUnixMountEntry",
|
42
|
-
(GBoxedCopyFunc)unixmount_copy,
|
43
|
-
(GBoxedFreeFunc)g_unix_mount_free);
|
44
|
-
|
45
|
-
return our_type;
|
46
|
-
}
|
47
|
-
|
48
|
-
#define G_TYPE_UNIX_MOUNT_ENTRY (g_unix_mount_entry_get_type())
|
49
|
-
|
50
|
-
#define _SELF(value) \
|
51
|
-
((GUnixMountEntry *)(RVAL2BOXED((value), G_TYPE_UNIX_MOUNT_ENTRY)))
|
52
|
-
|
53
|
-
#define GUNIXMOUNTENTRY2RVAL(value) BOXED2RVAL((value), G_TYPE_UNIX_MOUNT_ENTRY)
|
54
|
-
|
55
|
-
static VALUE
|
56
|
-
rg_compare(VALUE self, VALUE other)
|
57
|
-
{
|
58
|
-
return INT2FIX(g_unix_mount_compare(_SELF(self), _SELF(other)));
|
59
|
-
}
|
60
|
-
|
61
|
-
static VALUE
|
62
|
-
rg_mount_path(VALUE self)
|
63
|
-
{
|
64
|
-
return CSTR2RVAL(g_unix_mount_get_mount_path(_SELF(self)));
|
65
|
-
}
|
66
|
-
|
67
|
-
static VALUE
|
68
|
-
rg_device_path(VALUE self)
|
69
|
-
{
|
70
|
-
return CSTR2RVAL(g_unix_mount_get_device_path(_SELF(self)));
|
71
|
-
}
|
72
|
-
|
73
|
-
static VALUE
|
74
|
-
rg_fs_type(VALUE self)
|
75
|
-
{
|
76
|
-
return CSTR2RVAL(g_unix_mount_get_fs_type(_SELF(self)));
|
77
|
-
}
|
78
|
-
|
79
|
-
static VALUE
|
80
|
-
rg_readonly_p(VALUE self)
|
81
|
-
{
|
82
|
-
return CBOOL2RVAL(g_unix_mount_is_readonly(_SELF(self)));
|
83
|
-
}
|
84
|
-
|
85
|
-
static VALUE
|
86
|
-
rg_system_internal_p(VALUE self)
|
87
|
-
{
|
88
|
-
return CBOOL2RVAL(g_unix_mount_is_system_internal(_SELF(self)));
|
89
|
-
}
|
90
|
-
|
91
|
-
static VALUE
|
92
|
-
rg_guess_icon(VALUE self)
|
93
|
-
{
|
94
|
-
return GOBJ2RVAL_UNREF(g_unix_mount_guess_icon(_SELF(self)));
|
95
|
-
}
|
96
|
-
|
97
|
-
static VALUE
|
98
|
-
rg_guess_name(VALUE self)
|
99
|
-
{
|
100
|
-
return CSTR2RVAL_FREE(g_unix_mount_guess_name(_SELF(self)));
|
101
|
-
}
|
102
|
-
|
103
|
-
static VALUE
|
104
|
-
rg_guess_can_eject_p(VALUE self)
|
105
|
-
{
|
106
|
-
return CBOOL2RVAL(g_unix_mount_guess_can_eject(_SELF(self)));
|
107
|
-
}
|
108
|
-
|
109
|
-
static VALUE
|
110
|
-
rg_guess_should_display_p(VALUE self)
|
111
|
-
{
|
112
|
-
return CBOOL2RVAL(g_unix_mount_guess_should_display(_SELF(self)));
|
113
|
-
}
|
114
|
-
|
115
|
-
static VALUE
|
116
|
-
rg_s_at(G_GNUC_UNUSED VALUE self, VALUE mount_path)
|
117
|
-
{
|
118
|
-
guint64 time_read;
|
119
|
-
GUnixMountEntry *mount;
|
120
|
-
|
121
|
-
mount = g_unix_mount_at(RVAL2CSTR(mount_path), &time_read);
|
122
|
-
|
123
|
-
return rb_assoc_new(GUNIXMOUNTENTRY2RVAL(mount),
|
124
|
-
GUINT642RVAL(time_read));
|
125
|
-
}
|
126
|
-
|
127
|
-
static VALUE
|
128
|
-
rg_s_mount_path_system_internal_p(G_GNUC_UNUSED VALUE self, VALUE mount_path)
|
129
|
-
{
|
130
|
-
return CBOOL2RVAL(g_unix_is_mount_path_system_internal(RVAL2CSTR(mount_path)));
|
131
|
-
}
|
132
|
-
|
133
|
-
#endif
|
134
|
-
|
135
|
-
void
|
136
|
-
Init_gunixmount(G_GNUC_UNUSED VALUE mGio)
|
137
|
-
{
|
138
|
-
#ifdef HAVE_GIO_UNIX
|
139
|
-
VALUE RG_TARGET_NAMESPACE;
|
140
|
-
|
141
|
-
RG_TARGET_NAMESPACE = G_DEF_CLASS(G_TYPE_UNIX_MOUNT_ENTRY, "UnixMount", mGio);
|
142
|
-
|
143
|
-
rb_include_module(RG_TARGET_NAMESPACE, rb_mComparable);
|
144
|
-
|
145
|
-
/* TODO: This doesn't follow the naming conventions, but it seems
|
146
|
-
* overkill to have GLib::Unix just for mount_path_system_internal?. */
|
147
|
-
RG_DEF_SMETHOD_P(mount_path_system_internal, 1);
|
148
|
-
RG_DEF_SMETHOD(at, 1);
|
149
|
-
|
150
|
-
rbgobj_boxed_not_copy_obj(G_TYPE_UNIX_MOUNT_ENTRY);
|
151
|
-
|
152
|
-
RG_DEF_METHOD(compare, 1);
|
153
|
-
RG_DEF_ALIAS("<=>", "compare");
|
154
|
-
RG_DEF_METHOD(mount_path, 0);
|
155
|
-
RG_DEF_METHOD(device_path, 0);
|
156
|
-
RG_DEF_METHOD(fs_type, 0);
|
157
|
-
RG_DEF_METHOD_P(readonly, 0);
|
158
|
-
RG_DEF_METHOD_P(system_internal, 0);
|
159
|
-
RG_DEF_METHOD(guess_icon, 0);
|
160
|
-
RG_DEF_METHOD(guess_name, 0);
|
161
|
-
RG_DEF_METHOD_P(guess_can_eject, 0);
|
162
|
-
RG_DEF_METHOD_P(guess_should_display, 0);
|
163
|
-
#endif
|
164
|
-
}
|
@@ -1,65 +0,0 @@
|
|
1
|
-
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
|
-
/*
|
3
|
-
* Copyright (C) 2011 Ruby-GNOME2 Project Team
|
4
|
-
* Copyright (C) 2008-2009 Ruby-GNOME2 Project Team
|
5
|
-
*
|
6
|
-
* This library is free software; you can redistribute it and/or
|
7
|
-
* modify it under the terms of the GNU Lesser General Public
|
8
|
-
* License as published by the Free Software Foundation; either
|
9
|
-
* version 2.1 of the License, or (at your option) any later version.
|
10
|
-
*
|
11
|
-
* This library is distributed in the hope that it will be useful,
|
12
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
13
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
14
|
-
* Lesser General Public License for more details.
|
15
|
-
*
|
16
|
-
* You should have received a copy of the GNU Lesser General Public
|
17
|
-
* License along with this library; if not, write to the Free Software
|
18
|
-
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
19
|
-
* MA 02110-1301 USA
|
20
|
-
*/
|
21
|
-
|
22
|
-
#include "rbgio2private.h"
|
23
|
-
|
24
|
-
#ifdef HAVE_GIO_UNIX
|
25
|
-
#include <gio/gunixmounts.h>
|
26
|
-
|
27
|
-
#define RG_TARGET_NAMESPACE cUnixMountMonitor
|
28
|
-
#define _SELF(value) RVAL2GUNIXMOUNTMONITOR(value)
|
29
|
-
|
30
|
-
static VALUE
|
31
|
-
rg_initialize(int argc, VALUE *argv, VALUE self)
|
32
|
-
{
|
33
|
-
VALUE limit_msec;
|
34
|
-
GUnixMountMonitor *monitor;
|
35
|
-
|
36
|
-
rb_scan_args(argc, argv, "01", &limit_msec);
|
37
|
-
monitor = g_unix_mount_monitor_new();
|
38
|
-
if (!NIL_P(limit_msec))
|
39
|
-
g_unix_mount_monitor_set_rate_limit(monitor,
|
40
|
-
FIX2INT(limit_msec));
|
41
|
-
G_INITIALIZE(self, monitor);
|
42
|
-
|
43
|
-
return Qnil;
|
44
|
-
}
|
45
|
-
|
46
|
-
static VALUE
|
47
|
-
rg_set_rate_limit(VALUE self, VALUE limit_msec)
|
48
|
-
{
|
49
|
-
g_unix_mount_monitor_set_rate_limit(_SELF(self), FIX2INT(limit_msec));
|
50
|
-
|
51
|
-
return self;
|
52
|
-
}
|
53
|
-
|
54
|
-
#endif
|
55
|
-
|
56
|
-
void
|
57
|
-
Init_gunixmountmonitor(G_GNUC_UNUSED VALUE mGio)
|
58
|
-
{
|
59
|
-
#ifdef HAVE_GIO_UNIX
|
60
|
-
VALUE RG_TARGET_NAMESPACE = G_DEF_CLASS(G_TYPE_UNIX_MOUNT_MONITOR, "UnixMountMonitor", mGio);
|
61
|
-
|
62
|
-
RG_DEF_METHOD(initialize, -1);
|
63
|
-
RG_DEF_METHOD(set_rate_limit, 1);
|
64
|
-
#endif
|
65
|
-
}
|