| /******************************************************************************* |
| * Copyright (c) 2010, 2015 Tasktop Technologies and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * Tasktop Technologies - initial API and implementation |
| *******************************************************************************/ |
| |
| package org.eclipse.mylyn.internal.commons.notifications.feed; |
| |
| import java.util.Date; |
| |
| import org.eclipse.core.runtime.Platform; |
| import org.eclipse.mylyn.commons.notifications.core.AbstractNotification; |
| |
| /** |
| * @author Robert Elves |
| */ |
| public class ServiceMessage extends AbstractNotification { |
| |
| private Date date; |
| |
| private String description; |
| |
| private String eTag; |
| |
| private String id = "0"; //$NON-NLS-1$ |
| |
| private String image; |
| |
| private String lastModified; |
| |
| private String title; |
| |
| private String url; |
| |
| public ServiceMessage(String eventId) { |
| super(eventId); |
| } |
| |
| public int compareTo(ServiceMessage o) { |
| return -getId().compareTo(o.getId()); |
| } |
| |
| public Object getAdapter(@SuppressWarnings("rawtypes") Class adapter) { |
| return Platform.getAdapterManager().getAdapter(this, adapter); |
| } |
| |
| @Override |
| public Date getDate() { |
| return date; |
| } |
| |
| @Override |
| public String getDescription() { |
| return description; |
| } |
| |
| public String getETag() { |
| return eTag; |
| } |
| |
| public String getId() { |
| return id; |
| } |
| |
| public String getImage() { |
| return image; |
| } |
| |
| @Override |
| public String getLabel() { |
| return getTitle(); |
| } |
| |
| public String getLastModified() { |
| return lastModified; |
| } |
| |
| public String getTitle() { |
| return title; |
| } |
| |
| public String getUrl() { |
| return url; |
| } |
| |
| public boolean isValid() { |
| return id != null && title != null && description != null && image != null; |
| } |
| |
| public void setDate(Date date) { |
| this.date = date; |
| } |
| |
| public void setDescription(String description) { |
| this.description = description; |
| } |
| |
| public void setETag(String eTag) { |
| this.eTag = eTag; |
| } |
| |
| public void setId(String id) { |
| this.id = id; |
| } |
| |
| public void setImage(String image) { |
| this.image = image; |
| } |
| |
| public void setLastModified(String lastModified) { |
| this.lastModified = lastModified; |
| } |
| |
| public void setTitle(String title) { |
| this.title = title; |
| } |
| |
| public void setUrl(String url) { |
| this.url = url; |
| } |
| |
| @Override |
| public String toString() { |
| StringBuilder builder = new StringBuilder(); |
| builder.append("ServiceMessage [id="); //$NON-NLS-1$ |
| builder.append(id); |
| builder.append(", title="); //$NON-NLS-1$ |
| builder.append(title); |
| builder.append(", description="); //$NON-NLS-1$ |
| builder.append(description); |
| builder.append(", url="); //$NON-NLS-1$ |
| builder.append(url); |
| builder.append(", image="); //$NON-NLS-1$ |
| builder.append(image); |
| builder.append(", eTag="); //$NON-NLS-1$ |
| builder.append(eTag); |
| builder.append(", lastModified="); //$NON-NLS-1$ |
| builder.append(lastModified); |
| builder.append(", date="); //$NON-NLS-1$ |
| builder.append(date); |
| builder.append("]"); //$NON-NLS-1$ |
| return builder.toString(); |
| } |
| |
| /** |
| * Called when the user clicks a link in the message. |
| * |
| * @return whether the message should be closed when the link is clicked |
| */ |
| public boolean openLink(String link) { |
| return false; |
| } |
| |
| } |