1 /** 2 * $Revision$ 3 * $Date$ 4 * 5 * Copyright 2003-2007 Jive Software. 6 * 7 * All rights reserved. Licensed under the Apache License, Version 2.0 (the "License"); 8 * you may not use this file except in compliance with the License. 9 * You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, software 14 * distributed under the License is distributed on an "AS IS" BASIS, 15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 16 * See the License for the specific language governing permissions and 17 * limitations under the License. 18 */ 19 20 package org.jivesoftware.smackx.bookmark; 21 22 /** 23 * Respresents one instance of a URL defined using JEP-0048 Bookmark Storage JEP. 24 * 25 * @author Derek DeMoro 26 */ 27 public class BookmarkedURL implements SharedBookmark { 28 29 private String name; 30 private final String URL; 31 private boolean isRss; 32 private boolean isShared; 33 34 protected BookmarkedURL(String URL) { 35 this.URL = URL; 36 } 37 38 protected BookmarkedURL(String URL, String name, boolean isRss) { 39 this.URL = URL; 40 this.name = name; 41 this.isRss = isRss; 42 } 43 44 /** 45 * Returns the name representing the URL (eg. Jive Software). This can be used in as a label, or 46 * identifer in applications. 47 * 48 * @return the name reprenting the URL. 49 */ 50 public String getName() { 51 return name; 52 } 53 54 /** 55 * Sets the name representing the URL. 56 * 57 * @param name the name. 58 */ 59 protected void setName(String name) { 60 this.name = name; 61 } 62 63 /** 64 * Returns the URL. 65 * 66 * @return the url. 67 */ 68 public String getURL() { 69 return URL; 70 } 71 /** 72 * Set to true if this URL is an RSS or news feed. 73 * 74 * @param isRss True if the URL is a news feed and false if it is not. 75 */ 76 protected void setRss(boolean isRss) { 77 this.isRss = isRss; 78 } 79 80 /** 81 * Returns true if this URL is a news feed. 82 * 83 * @return Returns true if this URL is a news feed. 84 */ 85 public boolean isRss() { 86 return isRss; 87 } 88 89 public boolean equals(Object obj) { 90 if(!(obj instanceof BookmarkedURL)) { 91 return false; 92 } 93 BookmarkedURL url = (BookmarkedURL)obj; 94 return url.getURL().equalsIgnoreCase(URL); 95 } 96 97 protected void setShared(boolean shared) { 98 this.isShared = shared; 99 } 100 101 public boolean isShared() { 102 return isShared; 103 } 104 } 105