{"action":"closed","issue":{"url":"https://api.github.com/repos/tygron-virtual-humans/port-gamygdala/issues/7","labels_url":"https://api.github.com/repos/tygron-virtual-humans/port-gamygdala/issues/7/labels{/name}","comments_url":"https://api.github.com/repos/tygron-virtual-humans/port-gamygdala/issues/7/comments","events_url":"https://api.github.com/repos/tygron-virtual-humans/port-gamygdala/issues/7/events","html_url":"https://github.com/tygron-virtual-humans/port-gamygdala/issues/7","id":73924062,"number":7,"title":"Use observer pattern for goal registration","user":{"login":"svenvanhal","id":579633,"avatar_url":"https://avatars.githubusercontent.com/u/579633?v=3","gravatar_id":"","url":"https://api.github.com/users/svenvanhal","html_url":"https://github.com/svenvanhal","followers_url":"https://api.github.com/users/svenvanhal/followers","following_url":"https://api.github.com/users/svenvanhal/following{/other_user}","gists_url":"https://api.github.com/users/svenvanhal/gists{/gist_id}","starred_url":"https://api.github.com/users/svenvanhal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/svenvanhal/subscriptions","organizations_url":"https://api.github.com/users/svenvanhal/orgs","repos_url":"https://api.github.com/users/svenvanhal/repos","events_url":"https://api.github.com/users/svenvanhal/events{/privacy}","received_events_url":"https://api.github.com/users/svenvanhal/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":{"login":"svenvanhal","id":579633,"avatar_url":"https://avatars.githubusercontent.com/u/579633?v=3","gravatar_id":"","url":"https://api.github.com/users/svenvanhal","html_url":"https://github.com/svenvanhal","followers_url":"https://api.github.com/users/svenvanhal/followers","following_url":"https://api.github.com/users/svenvanhal/following{/other_user}","gists_url":"https://api.github.com/users/svenvanhal/gists{/gist_id}","starred_url":"https://api.github.com/users/svenvanhal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/svenvanhal/subscriptions","organizations_url":"https://api.github.com/users/svenvanhal/orgs","repos_url":"https://api.github.com/users/svenvanhal/repos","events_url":"https://api.github.com/users/svenvanhal/events{/privacy}","received_events_url":"https://api.github.com/users/svenvanhal/received_events","type":"User","site_admin":false},"milestone":null,"comments":0,"created_at":"2015-05-07T09:57:03Z","updated_at":"2015-05-08T09:54:45Z","closed_at":"2015-05-08T09:54:45Z","body":"Currently, whenever you want to add a ```Goal``` to an ```Agent```, you also have to register this ```Goal``` with the engine. To enhance the user-friendlyness of the engine, we need to extend the Engine with listener functions (using the Observer design pattern). This way, whenever a new ```Goal``` is created for an ```Agent```, the engine is automatically updated."}}