All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.xlrit.gears.engine.flowable.GearsClock Maven / Gradle / Ivy

package com.xlrit.gears.engine.flowable;

import java.time.ZoneId;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.TimeZone;

import com.xlrit.gears.base.function.DefaultFunctions;
import org.flowable.common.engine.impl.runtime.Clock;

class GearsClock implements Clock {

	@Override
	public TimeZone getCurrentTimeZone() {
		return TimeZone.getDefault();
	}

	@Override
	public Date getCurrentTime() {
		return Date.from(DefaultFunctions.currentDatetime().toInstant());
	}

	@Override
	public Calendar getCurrentCalendar() {
		return GregorianCalendar.from(DefaultFunctions.currentDatetime().atZoneSameInstant(ZoneId.systemDefault()));
	}

	@Override
	public Calendar getCurrentCalendar(TimeZone timeZone) {
		return GregorianCalendar.from(DefaultFunctions.currentDatetime().atZoneSameInstant(timeZone.toZoneId()));
	}

	@Override
	public void setCurrentTime(Date date) {
		throw new UnsupportedOperationException();
	}

	@Override
	public void setCurrentCalendar(Calendar calendar) {
		throw new UnsupportedOperationException();
	}

	@Override
	public void reset() {
		throw new UnsupportedOperationException();
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy