Sha256: 6a85db2734c62c875b9ecfc3d60d1c3e0338a6dcc5490eb45d54b1a3c2b2ab0f

Contents?: true

Size: 1.22 KB

Versions: 1

Compression:

Stored size: 1.22 KB

Contents

include "aptpackage.sfp"

schema Service {
	running = true
	configured = true

	final service_name = ""

	sub start {
		condition {
			this.running != true
			this.configured = true
		}
		effect {
			this.running = true
		}
	}

	sub stop {
		condition {
			this.running = true
		}
		effect {
			this.running = false
		}
	}

	sub configure {
		condition {
			this.running = false
		}
		effect {
			this.configured = true
		}
	}
}

schema SysVService extends Service {
	final runlevel isset String
}

schema AptService extends AptPackage {
	synchronized sub install {
		condition {
			this.installed != true
		}
		effect {
			this.installed = true
			this.running = false
			this.configured = false
		}
	}
	
	synchronized sub uninstall {
		condition {
			this.running = false
			this.installed = true
		}
		effect {
			this.installed = false
			this.configured = true
		}
	}

	sub start {
		condition {
			this.running != true
			this.installed = true
			this.configured = true
		}
		effect {
			this.running = true
		}
	}

	sub stop {
		condition {
			this.running = true
		}
		effect {
			this.running = false
		}
	}

	sub configure {
		condition {
			this.installed = true
			this.running = false
		}
		effect {
			this.configured = true
		}
	}
}

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
nuri-0.5.4 examples/v2/service.sfp