|
Groovy example source code file (TimeLogModel.groovy)
The Groovy TimeLogModel.groovy source codepackage swing.timelog import groovy.beans.Bindable class TimeLogRow { String client long start long stop long getDuration() { return stop - start } } class TimeLogModel { String currentClient long currentStart List<TimeLogRow> entries = [] @Bindable boolean running @Bindable long elapsedTime public synchronized startRecording(String client) { if (running) throw new RuntimeException("Currently Running") currentClient = client currentStart = System.currentTimeMillis() setRunning(true) while (running) { setElapsedTime(System.currentTimeMillis() - currentStart) this.wait(1000) } } public synchronized stopRecording() { if (!running) throw new RuntimeException("Not Running") setRunning(false) this.notifyAll() entries.add(new TimeLogRow(client:currentClient, start:currentStart, stop:System.currentTimeMillis())) } } Other Groovy examples (source code examples)Here is a short list of links related to this Groovy TimeLogModel.groovy source code file: |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2024 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.