@web.asynchronous
    @gen.engine
    def head(self, *args, **kwargs):
        # Create the model and fetch its data
        self.model = self.get_model(kwargs.get('id'))
        result = yield self.model.fetch()

        # If model is not found, return 404
        if not result:
            self.not_found()
            return

        # Stub to check for read permissions
        if not self.has_read_permission():
            self.permission_denied()
            return

        # Add the headers (etag, content-length), set the status
        self.add_headers()
        self.set_status(200)
        self.finish()
Handle HEAD requests for the item
dataset/ETHPy150Open gmr/tinman/tinman/handlers/mixins.py/ModelAPIMixin.head