
woko.async.facets.RenderLinksJobDetailsDeveloper Maven / Gradle / Ivy
The newest version!
package woko.async.facets;
import net.sourceforge.jfacets.IFacetDescriptorManager;
import net.sourceforge.jfacets.annotations.FacetKey;
import woko.async.JobDetails;
import woko.facets.builtin.RenderLinks;
import woko.facets.builtin.all.Link;
import woko.facets.builtin.all.RenderLinksImpl;
import woko.persistence.ObjectStore;
import woko.users.UserManager;
import woko.users.UsernameResolutionStrategy;
import woko.util.LinkUtil;
import java.util.ArrayList;
import java.util.List;
/**
* Adds kill
link for target {@link JobDetails} if killable.
*/
@FacetKey(name= RenderLinks.FACET_NAME,profileId = "developer",targetObjectType = JobDetails.class)
public class RenderLinksJobDetailsDeveloper<
OsType extends ObjectStore,
UmType extends UserManager,
UnsType extends UsernameResolutionStrategy,
FdmType extends IFacetDescriptorManager
> extends RenderLinksImpl{
@Override
public List getLinks() {
ObjectStore os = getObjectStore();
JobDetails jd = (JobDetails)getFacetContext().getTargetObject();
List links = new ArrayList(super.getLinks());
if (jd.getKillTime()==null && jd.getEndTime()==null) {
String url = LinkUtil.getUrl(getWoko(), jd, "kill");
links.add(new Link(url, "kill"));
}
return links;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy