result.scheduleAtFixedRate(task, endpoint.getDelay(), endpoint.getPeriod());
}
} else {
if (endpoint.getTime() != null) {
if (endpoint.getPeriod() >= 0) {
result.schedule(task, endpoint.getTime(), endpoint.getPeriod());
} else {
result.schedule(task, endpoint.getTime());
}
} else {
if (endpoint.getPeriod() >= 0) {