using the Quartz plugin and make a cron job out of it is probably the best way forward, especially if you are going to need other pollers.
However, if you know its a once off, and you dont want to pull in quartz (for some odd reason), you can still roll your own poller using a timer task, or even use a groovy thread:
Thread.start {
while (keepGoing) {
def result = new URL("http://google.com").text
// parse result depending on what it is
//perhaps def model = new YourDomainModel(result).save()
keepGoing = model.shouldContinue //calculate whether to keep going based on the result, or some other method call/logic
Thread.sleep(5*60*1000) //min*seconds_per_min*milliseconds_per_second
}
}
You can then call this during bootStrap, or create a service class, call the above inside the constructor, and have a method to stop the thread (but if you get to this stage, its really just easier to use quartz).