Also, I think this job management is an overkill here. How many attribute changes can there be for a simple thing like a button?