예제 #1
0
파일: world.py 프로젝트: jkoelker/shaft
    def render_GET(self, request):
        def backup():
            def done(_):
                request.finish()

            path = os.path.join(settings.config["minecraft"]["path"],
                                self.world)

            # Punt on sending the right encoding
            request.setHeader("content-type",
                              "application/octet-stream")
            request.setHeader("content-disposition",
                              "attachemnt;filename=%s" % self.file)
            backup = backup.backup(path, type, done)
            request.registerProducer(backup, True)

        def saveAll(result):
            if not result["success"]:
                requst.finish()

            backup()

        def saveOff(result):
            if not result["success"]:
                request.finish()

            d = supervisor.get().getMinecraftProto().saveAll()
            d.addCallback(saveAll)

        if not backup.isKnownType(self.type):
            return ''

        if supervisor.get().minecraftRunning():
            d = supervisor.get().getMinecraftProto().saveOff()
            d.addCallback(saveOff)
        else:
            backup()

        return server.NOT_DONE_YET
예제 #2
0
파일: world.py 프로젝트: jkoelker/shaft
    def render_GET(self, request):
        def backup():
            def done(_):
                request.finish()

            path = os.path.join(settings.config["minecraft"]["path"],
                                self.world)

            # Punt on sending the right encoding
            request.setHeader("content-type", "application/octet-stream")
            request.setHeader("content-disposition",
                              "attachemnt;filename=%s" % self.file)
            backup = backup.backup(path, type, done)
            request.registerProducer(backup, True)

        def saveAll(result):
            if not result["success"]:
                requst.finish()

            backup()

        def saveOff(result):
            if not result["success"]:
                request.finish()

            d = supervisor.get().getMinecraftProto().saveAll()
            d.addCallback(saveAll)

        if not backup.isKnownType(self.type):
            return ''

        if supervisor.get().minecraftRunning():
            d = supervisor.get().getMinecraftProto().saveOff()
            d.addCallback(saveOff)
        else:
            backup()

        return server.NOT_DONE_YET
예제 #3
0
파일: world.py 프로젝트: jkoelker/shaft
        def saveAll(result):
            if not result["success"]:
                requst.finish()

            backup()
예제 #4
0
파일: world.py 프로젝트: jkoelker/shaft
        def saveAll(result):
            if not result["success"]:
                requst.finish()

            backup()