File Coverage

blib/lib/Udev/FFI/Device.pm
Criterion Covered Total %
statement 9 78 11.5
branch 0 4 0.0
condition n/a
subroutine 3 29 10.3
pod 0 25 0.0
total 12 136 8.8


line stmt bran cond sub pod time code
1             package Udev::FFI::Device;
2              
3 2     2   11 use strict;
  2         4  
  2         48  
4 2     2   9 use warnings;
  2         3  
  2         41  
5              
6 2     2   8 use Udev::FFI::FFIFunctions;
  2         2  
  2         1552  
7              
8              
9              
10             sub new {
11 0     0 0   my $class = shift;
12              
13 0           my $self = {
14             _device => shift
15             };
16              
17 0           bless $self, $class;
18              
19 0           return $self;
20             }
21              
22              
23              
24             sub get_udev {
25 0     0 0   my $self = shift;
26              
27 0           return udev_device_get_udev($self->{_device});
28             }
29              
30              
31              
32             sub get_devpath {
33 0     0 0   my $self = shift;
34              
35 0           return udev_device_get_devpath($self->{_device});
36             }
37              
38              
39             sub get_subsystem {
40 0     0 0   my $self = shift;
41              
42 0           return udev_device_get_subsystem($self->{_device});
43             }
44              
45              
46             sub get_devtype {
47 0     0 0   my $self = shift;
48              
49 0           return udev_device_get_devtype($self->{_device});
50             }
51              
52              
53             sub get_syspath {
54 0     0 0   my $self = shift;
55              
56 0           return udev_device_get_syspath($self->{_device});
57             }
58              
59              
60             sub get_sysname {
61 0     0 0   my $self = shift;
62              
63 0           return udev_device_get_sysname($self->{_device});
64             }
65              
66              
67             sub get_sysnum {
68 0     0 0   my $self = shift;
69              
70 0           return udev_device_get_sysnum($self->{_device});
71             }
72              
73              
74             sub get_devnode {
75 0     0 0   my $self = shift;
76              
77 0           return udev_device_get_devnode($self->{_device});
78             }
79              
80              
81             sub get_is_initialized {
82 0     0 0   my $self = shift;
83              
84 0           return udev_device_get_is_initialized($self->{_device});
85             }
86              
87              
88             sub get_property_value {
89 0     0 0   my $self = shift;
90 0           my $key = shift;
91              
92 0           return udev_device_get_property_value($self->{_device}, $key);
93             }
94              
95              
96             sub get_driver {
97 0     0 0   my $self = shift;
98              
99 0           return udev_device_get_driver($self->{_device});
100             }
101              
102              
103             sub get_devnum {
104 0     0 0   my $self = shift;
105              
106 0           return udev_device_get_devnum($self->{_device});
107             }
108              
109              
110             sub get_action {
111 0     0 0   my $self = shift;
112              
113 0           return udev_device_get_action($self->{_device});
114             }
115              
116              
117             sub get_seqnum {
118 0     0 0   my $self = shift;
119              
120 0           return udev_device_get_seqnum($self->{_device});
121             }
122              
123              
124             sub get_usec_since_initialized {
125 0     0 0   my $self = shift;
126              
127 0           return udev_device_get_usec_since_initialized($self->{_device});
128             }
129              
130              
131             sub get_sysattr_value {
132 0     0 0   my $self = shift;
133 0           my $sysattr = shift;
134              
135 0           return udev_device_get_sysattr_value($self->{_device}, $sysattr);
136             }
137              
138              
139             sub set_sysattr_value {
140 0     0 0   my $self = shift;
141 0           my $sysattr = shift;
142 0           my $value = shift;
143              
144 0           return udev_device_set_sysattr_value($self->{_device}, $sysattr, $value);
145             }
146              
147              
148             sub has_tag {
149 0     0 0   my $self = shift;
150 0           my $tag = shift;
151              
152 0           return udev_device_has_tag($self->{_device}, $tag);
153             }
154              
155              
156              
157             sub get_parent {
158 0     0 0   my $self = shift;
159              
160 0           my $device = udev_device_get_parent( $self->{_device} );
161 0 0         if(defined($device)) {
162 0           udev_device_ref($device);
163              
164 0           return Udev::FFI::Device->new( $device );
165             }
166              
167 0           return undef;
168             }
169              
170              
171             sub get_parent_with_subsystem_devtype {
172 0     0 0   my $self = shift;
173 0           my $subsystem = shift;
174 0           my $devtype = shift;
175              
176 0           my $device = udev_device_get_parent_with_subsystem_devtype( $self->{_device}, $subsystem, $devtype );
177 0 0         if(defined($device)) {
178 0           udev_device_ref($device);
179              
180 0           return Udev::FFI::Device->new( $device );
181             }
182              
183 0           return undef;
184             }
185              
186              
187              
188             sub get_devlinks_list_entries {
189 0     0 0   my $self = shift;
190              
191 0           return get_entries( udev_device_get_devlinks_list_entry( $self->{_device} ) );
192             }
193              
194              
195             sub get_properties_list_entries {
196 0     0 0   my $self = shift;
197              
198 0           return get_entries( udev_device_get_properties_list_entry( $self->{_device} ) );
199             }
200              
201              
202             sub get_tags_list_entries {
203 0     0 0   my $self = shift;
204              
205 0           return get_entries( udev_device_get_tags_list_entry( $self->{_device} ) );
206             }
207              
208              
209             sub get_sysattr_list_entries {
210 0     0 0   my $self = shift;
211              
212 0           return get_entries( udev_device_get_sysattr_list_entry( $self->{_device} ) );
213             }
214              
215              
216              
217             sub DESTROY {
218 0     0     my $self = shift;
219              
220 0           udev_device_unref( $self->{_device} );
221             }
222              
223              
224              
225             1;