2010-02-03 15:03:47 +03:00
/ * * *
This file is part of systemd .
Copyright 2010 Lennart Poettering
systemd is free software ; you can redistribute it and / or modify it
under the terms of the GNU General Public License as published by
the Free Software Foundation ; either version 2 of the License , or
( at your option ) any later version .
systemd is distributed in the hope that it will be useful , but
WITHOUT ANY WARRANTY ; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the GNU
General Public License for more details .
You should have received a copy of the GNU General Public License
along with systemd ; If not , see < http : //www.gnu.org/licenses/>.
* * * /
2010-02-03 14:39:12 +03:00
using DBus ;
2010-04-18 05:08:16 +04:00
[ DBus ( name = " org.freedesktop.systemd1.Manager " ) ]
2010-02-03 14:39:12 +03:00
public interface Manager : DBus . Object {
public struct UnitInfo {
string id ;
string description ;
string load_state ;
string active_state ;
2010-04-13 22:59:01 +04:00
string sub_state ;
2010-07-20 22:33:19 +04:00
string following ;
2010-02-03 14:39:12 +03:00
ObjectPath unit_path ;
uint32 job_id ;
string job_type ;
ObjectPath job_path ;
}
public struct JobInfo {
uint32 id ;
string name ;
string type ;
string state ;
ObjectPath job_path ;
ObjectPath unit_path ;
}
2010-05-10 01:53:52 +04:00
public abstract string [ ] environment { owned get ; }
2010-02-03 14:39:12 +03:00
public abstract UnitInfo [ ] list_units ( ) throws DBus . Error ;
public abstract JobInfo [ ] list_jobs ( ) throws DBus . Error ;
public abstract ObjectPath get_unit ( string name ) throws DBus . Error ;
2010-08-20 04:26:05 +04:00
public abstract ObjectPath get_unit_by_pid ( uint32 pid ) throws DBus . Error ;
2010-02-03 14:39:12 +03:00
public abstract ObjectPath load_unit ( string name ) throws DBus . Error ;
public abstract ObjectPath get_job ( uint32 id ) throws DBus . Error ;
2010-08-20 04:26:05 +04:00
public abstract ObjectPath start_unit ( string name , string mode = " replace " ) throws DBus . Error ;
public abstract ObjectPath stop_unit ( string name , string mode = " replace " ) throws DBus . Error ;
public abstract ObjectPath reload_unit ( string name , string mode = " replace " ) throws DBus . Error ;
public abstract ObjectPath restart_unit ( string name , string mode = " replace " ) throws DBus . Error ;
public abstract ObjectPath try_restart_unit ( string name , string mode = " replace " ) throws DBus . Error ;
public abstract ObjectPath reload_or_restart_unit ( string name , string mode = " replace " ) throws DBus . Error ;
public abstract ObjectPath reload_or_try_restart_unit ( string name , string mode = " replace " ) throws DBus . Error ;
public abstract void reset_maintenance_unit ( string name = " " ) throws DBus . Error ;
2010-06-01 21:47:46 +04:00
2010-02-03 14:39:12 +03:00
public abstract void clear_jobs ( ) throws DBus . Error ;
2010-02-05 02:38:41 +03:00
public abstract void subscribe ( ) throws DBus . Error ;
public abstract void unsubscribe ( ) throws DBus . Error ;
2010-04-10 19:37:56 +04:00
public abstract string dump ( ) throws DBus . Error ;
2010-04-21 05:27:44 +04:00
public abstract void reload ( ) throws DBus . Error ;
public abstract void reexecute ( ) throws DBus . Error ;
public abstract void exit ( ) throws DBus . Error ;
2010-04-23 05:57:50 +04:00
public abstract ObjectPath create_snapshot ( string name = " " , bool cleanup = false ) throws DBus . Error ;
2010-04-18 05:07:42 +04:00
2010-05-10 01:53:52 +04:00
public abstract void set_environment ( string [ ] names ) throws DBus . Error ;
public abstract void unset_environment ( string [ ] names ) throws DBus . Error ;
2010-02-05 02:38:41 +03:00
public abstract signal void unit_new ( string id , ObjectPath path ) ;
public abstract signal void unit_removed ( string id , ObjectPath path ) ;
public abstract signal void job_new ( uint32 id , ObjectPath path ) ;
2010-05-22 06:27:24 +04:00
public abstract signal void job_removed ( uint32 id , ObjectPath path , bool success ) ;
2010-02-03 14:39:12 +03:00
}
[ DBus ( name = " org.freedesktop.systemd1.Unit " ) ]
public interface Unit : DBus . Object {
2010-02-05 02:38:41 +03:00
public struct JobLink {
uint32 id ;
ObjectPath path ;
}
2010-02-03 14:39:12 +03:00
public abstract string id { owned get ; }
2010-04-23 05:57:50 +04:00
public abstract string [ ] names { owned get ; }
2010-08-20 04:26:05 +04:00
public abstract string following { owned get ; }
2010-05-16 20:02:41 +04:00
public abstract string [ ] requires { owned get ; }
public abstract string [ ] requires_overridable { owned get ; }
public abstract string [ ] requisite { owned get ; }
public abstract string [ ] requisite_overridable { owned get ; }
public abstract string [ ] wants { owned get ; }
public abstract string [ ] required_by { owned get ; }
public abstract string [ ] required_by_overridable { owned get ; }
public abstract string [ ] wanted_by { owned get ; }
public abstract string [ ] conflicts { owned get ; }
2010-08-20 04:26:05 +04:00
public abstract string [ ] conflicted_by { owned get ; }
2010-05-16 20:02:41 +04:00
public abstract string [ ] before { owned get ; }
public abstract string [ ] after { owned get ; }
2010-08-20 04:26:05 +04:00
public abstract string [ ] on_failure { owned get ; }
2010-02-03 14:39:12 +03:00
public abstract string description { owned get ; }
public abstract string load_state { owned get ; }
public abstract string active_state { owned get ; }
2010-04-18 05:08:16 +04:00
public abstract string sub_state { owned get ; }
2010-02-14 03:01:10 +03:00
public abstract string fragment_path { owned get ; }
2010-05-14 05:05:38 +04:00
public abstract uint64 inactive_exit_timestamp { owned get ; }
2010-02-03 14:39:12 +03:00
public abstract uint64 active_enter_timestamp { owned get ; }
public abstract uint64 active_exit_timestamp { owned get ; }
2010-05-14 05:05:38 +04:00
public abstract uint64 inactive_enter_timestamp { owned get ; }
2010-02-03 14:39:12 +03:00
public abstract bool can_start { owned get ; }
2010-08-20 04:26:05 +04:00
public abstract bool can_stop { owned get ; }
2010-04-18 05:08:16 +04:00
public abstract bool can_reload { owned get ; }
2010-05-16 20:02:41 +04:00
public abstract JobLink job { owned get ; }
2010-04-18 05:08:16 +04:00
public abstract bool recursive_stop { owned get ; }
public abstract bool stop_when_unneeded { owned get ; }
2010-08-20 04:26:05 +04:00
public abstract bool refuse_manual_start { owned get ; }
public abstract bool refuse_manual_stop { owned get ; }
public abstract bool default_dependencies { owned get ; }
2010-04-18 05:08:16 +04:00
public abstract string default_control_group { owned get ; }
2010-05-16 20:02:41 +04:00
public abstract string [ ] control_groups { owned get ; }
2010-08-20 04:26:05 +04:00
public abstract bool need_daemon_reload { owned get ; }
public abstract uint64 job_timeout_usec { owned get ; }
public abstract ObjectPath start ( string mode = " replace " ) throws DBus . Error ;
public abstract ObjectPath stop ( string mode = " replace " ) throws DBus . Error ;
public abstract ObjectPath reload ( string mode = " replace " ) throws DBus . Error ;
public abstract ObjectPath restart ( string mode = " replace " ) throws DBus . Error ;
public abstract ObjectPath try_restart ( string mode = " replace " ) throws DBus . Error ;
public abstract ObjectPath reload_or_restart ( string mode = " replace " ) throws DBus . Error ;
public abstract ObjectPath reload_or_try_restart ( string mode = " replace " ) throws DBus . Error ;
public abstract void reset_maintenance ( ) throws DBus . Error ;
2010-02-03 14:39:12 +03:00
}
[ DBus ( name = " org.freedesktop.systemd1.Job " ) ]
public interface Job : DBus . Object {
2010-02-05 02:38:41 +03:00
public struct UnitLink {
string id ;
ObjectPath path ;
}
2010-02-03 14:39:12 +03:00
public abstract uint32 id { owned get ; }
public abstract string state { owned get ; }
public abstract string job_type { owned get ; }
2010-05-16 20:02:41 +04:00
public abstract UnitLink unit { owned get ; }
2010-02-03 14:39:12 +03:00
public abstract void cancel ( ) throws DBus . Error ;
2010-08-20 04:26:05 +04:00
}
2010-02-05 02:38:41 +03:00
2010-08-20 04:26:05 +04:00
[ DBus ( name = " org.freedesktop.DBus.Properties " ) ]
public interface Properties : DBus . Object {
public abstract Value ? get ( string iface , string property ) throws DBus . Error ;
public abstract signal void properties_changed ( string iface , HashTable < string , Value ? > changed_properties , string [ ] invalidated_properties ) ;
2010-02-03 14:39:12 +03:00
}