/* * (c) Copyright Reserved EVRYTHNG Limited 2016. All rights reserved. * Use of this material is subject to license. * Copying and unauthorised use of this material strictly prohibited. */ package com.evrythng.thng.resource.model.store.content; import java.io.Serializable; import java.util.HashMap; import java.util.Map; /** * Rest model for a Media. **/ public class Media implements Serializable { private static final long serialVersionUID = 3768449543643432186L; private String url; private String text; private String mimeType; protected Map<String, String> customFields; public Media() { } public Media(String url, String text, String mimeType) { super(); this.url = url; this.text = text; this.mimeType = mimeType; } public String getUrl() { return url; } public void setUrl(String url) { this.url = url; } public String getText() { return text; } public void setText(String text) { this.text = text; } public String getMimeType() { return mimeType; } public void setMimeType(String mimeType) { this.mimeType = mimeType; } public Map<String, String> getCustomFields() { return customFields; } public void setCustomFields(Map<String, String> customFields) { this.customFields = customFields; } public void addCustomFields(String key, String value) { if (customFields == null) { customFields = new HashMap<String, String>(); } customFields.put(key, value); } @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((customFields == null) ? 0 : customFields.hashCode()); result = prime * result + ((mimeType == null) ? 0 : mimeType.hashCode()); result = prime * result + ((text == null) ? 0 : text.hashCode()); result = prime * result + ((url == null) ? 0 : url.hashCode()); return result; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; Media other = (Media) obj; if (customFields == null) { if (other.customFields != null) return false; } else if (!customFields.equals(other.customFields)) return false; if (mimeType == null) { if (other.mimeType != null) return false; } else if (!mimeType.equals(other.mimeType)) return false; if (text == null) { if (other.text != null) return false; } else if (!text.equals(other.text)) return false; if (url == null) { if (other.url != null) return false; } else if (!url.equals(other.url)) return false; return true; } }