• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 
BookmarkedURL(String URL)34     protected BookmarkedURL(String URL) {
35         this.URL = URL;
36     }
37 
BookmarkedURL(String URL, String name, boolean isRss)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      */
getName()50     public String getName() {
51         return name;
52     }
53 
54     /**
55      * Sets the name representing the URL.
56      *
57      * @param name the name.
58      */
setName(String name)59     protected void setName(String name) {
60         this.name = name;
61     }
62 
63     /**
64      * Returns the URL.
65      *
66      * @return the url.
67      */
getURL()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      */
setRss(boolean isRss)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      */
isRss()85     public boolean isRss() {
86         return isRss;
87     }
88 
equals(Object obj)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 
setShared(boolean shared)97     protected void setShared(boolean shared) {
98         this.isShared = shared;
99     }
100 
isShared()101     public boolean isShared() {
102         return isShared;
103     }
104 }
105