aboutsummaryrefslogtreecommitdiffstats
path: root/src/net/java/sip/communicator/service/contactsource/GenericSourceContact.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/net/java/sip/communicator/service/contactsource/GenericSourceContact.java')
-rw-r--r--src/net/java/sip/communicator/service/contactsource/GenericSourceContact.java586
1 files changed, 293 insertions, 293 deletions
diff --git a/src/net/java/sip/communicator/service/contactsource/GenericSourceContact.java b/src/net/java/sip/communicator/service/contactsource/GenericSourceContact.java
index a77adee..0c0cb0d 100644
--- a/src/net/java/sip/communicator/service/contactsource/GenericSourceContact.java
+++ b/src/net/java/sip/communicator/service/contactsource/GenericSourceContact.java
@@ -1,4 +1,4 @@
-/*
+/*
* Jitsi, the OpenSource Java VoIP and Instant Messaging client.
*
* Copyright @ 2015 Atlassian Pty Ltd
@@ -15,295 +15,295 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package net.java.sip.communicator.service.contactsource;
-
-import java.util.*;
-
-import net.java.sip.communicator.service.protocol.*;
-import net.java.sip.communicator.util.*;
-
-/**
- * Implements a generic <tt>SourceContact</tt> for the purposes of the support
- * for the OS-specific Address Book.
- *
- * @author Lyubomir Marinov
- */
-public class GenericSourceContact
- extends DataObject
- implements SourceContact
-{
- /**
- * The <tt>ContactDetail</tt>s of this <tt>SourceContact</tt>.
- */
- protected final List<ContactDetail> contactDetails;
-
- /**
- * The <tt>ContactSourceService</tt> which has created this
- * <tt>SourceContact</tt>.
- */
- private final ContactSourceService contactSource;
-
- /**
- * The display name of this <tt>SourceContact</tt>.
- */
- private String displayName;
-
- /**
- * The display details of this contact.
- */
- private String displayDetails;
-
- /**
- * The presence status of this contact.
- */
- private PresenceStatus presenceStatus;
-
- /**
- * The image/avatar of this <tt>SourceContact</tt>
- */
- private byte[] image;
-
- /**
- * The address of the contact.
- */
- private String contactAddress = null;
-
- /**
- * Initializes a new <tt>AddrBookSourceContact</tt> instance.
- *
- * @param contactSource the <tt>ContactSourceService</tt> which is creating
- * the new instance
- * @param displayName the display name of the new instance
- * @param contactDetails the <tt>ContactDetail</tt>s of the new instance
- */
- public GenericSourceContact(
- ContactSourceService contactSource,
- String displayName,
- List<ContactDetail> contactDetails)
- {
- this.contactSource = contactSource;
- this.displayName = displayName;
- this.contactDetails = contactDetails;
- }
-
- /**
- * Returns the address of the contact.
- *
- * @return the contact address.
- */
- public String getContactAddress()
- {
- return contactAddress;
- }
-
- /**
- * Gets the <tt>ContactDetail</tt>s of this <tt>SourceContact</tt>.
- *
- * @return the <tt>ContactDetail</tt>s of this <tt>SourceContact</tt>
- * @see SourceContact#getContactDetails()
- */
- public List<ContactDetail> getContactDetails()
- {
- return Collections.unmodifiableList(contactDetails);
- }
-
- /**
- * Gets the <tt>ContactDetail</tt>s of this <tt>SourceContact</tt> which
- * support a specific <tt>OperationSet</tt>.
- *
- * @param operationSet the <tt>OperationSet</tt> the supporting
- * <tt>ContactDetail</tt>s of which are to be returned
- * @return the <tt>ContactDetail</tt>s of this <tt>SourceContact</tt> which
- * support the specified <tt>operationSet</tt>
- * @see SourceContact#getContactDetails(Class)
- */
- public List<ContactDetail> getContactDetails(
- Class<? extends OperationSet> operationSet)
- {
- List<ContactDetail> contactDetails = new LinkedList<ContactDetail>();
-
- for (ContactDetail contactDetail : getContactDetails())
- {
- List<Class<? extends OperationSet>> supportedOperationSets
- = contactDetail.getSupportedOperationSets();
-
- if ((supportedOperationSets != null)
- && supportedOperationSets.contains(operationSet))
- contactDetails.add(contactDetail);
- }
- return contactDetails;
- }
-
- /**
- * Returns a list of all <tt>ContactDetail</tt>s corresponding to the given
- * category.
- * @param category the <tt>OperationSet</tt> class we're looking for
- * @return a list of all <tt>ContactDetail</tt>s corresponding to the given
- * category
- */
- public List<ContactDetail> getContactDetails(
- ContactDetail.Category category)
- {
- List<ContactDetail> contactDetails = new LinkedList<ContactDetail>();
-
- for (ContactDetail contactDetail : getContactDetails())
- {
- if(contactDetail != null)
- {
- ContactDetail.Category detailCategory
- = contactDetail.getCategory();
- if (detailCategory != null && detailCategory.equals(category))
- contactDetails.add(contactDetail);
- }
- }
- return contactDetails;
- }
-
- /**
- * Gets the <tt>ContactSourceService</tt> which has created this
- * <tt>SourceContact</tt>.
- *
- * @return the <tt>ContactSourceService</tt> which has created this
- * <tt>SourceContact</tt>
- * @see SourceContact#getContactSource()
- */
- public ContactSourceService getContactSource()
- {
- return contactSource;
- }
-
- /**
- * Gets the display details of this <tt>SourceContact</tt>.
- *
- * @return the display details of this <tt>SourceContact</tt>
- * @see SourceContact#getDisplayDetails()
- */
- public String getDisplayDetails()
- {
- return displayDetails;
- }
-
- /**
- * Sets the address of the contact.
- *
- * @param contactAddress the address to set.
- */
- public void setContactAddress(String contactAddress)
- {
- this.contactAddress = contactAddress;
- }
-
- /**
- * Sets the display details of this <tt>SourceContact</tt>.
- *
- * @param displayDetails the display details of this <tt>SourceContact</tt>
- */
- public String setDisplayDetails(String displayDetails)
- {
- return this.displayDetails = displayDetails;
- }
-
- /**
- * Gets the display name of this <tt>SourceContact</tt>.
- *
- * @return the display name of this <tt>SourceContact</tt>
- * @see SourceContact#getDisplayName()
- */
- public String getDisplayName()
- {
- return displayName;
- }
-
- /**
- * Sets the display name of this <tt>SourceContact</tt>.
- *
- * @param displayName The display name of this <tt>SourceContact</tt>
- */
- public void setDisplayName(String displayName)
- {
- this.displayName = displayName;
- }
-
- /**
- * Gets the image/avatar of this <tt>SourceContact</tt>.
- *
- * @return the image/avatar of this <tt>SourceContact</tt>
- * @see SourceContact#getImage()
- */
- public byte[] getImage()
- {
- return image;
- }
-
- /**
- * Gets the preferred <tt>ContactDetail</tt> for a specific
- * <tt>OperationSet</tt>.
- *
- * @param operationSet the <tt>OperationSet</tt> to get the preferred
- * <tt>ContactDetail</tt> for
- * @return the preferred <tt>ContactDetail</tt> for the specified
- * <tt>operationSet</tt>
- * @see SourceContact#getPreferredContactDetail(Class)
- */
- public ContactDetail getPreferredContactDetail(
- Class<? extends OperationSet> operationSet)
- {
- List<ContactDetail> contactDetails = getContactDetails(operationSet);
-
- return contactDetails.isEmpty() ? null : contactDetails.get(0);
- }
-
- /**
- * Sets the image/avatar of this <tt>SourceContact</tt>.
- *
- * @param image the image/avatar to be set on this <tt>SourceContact</tt>
- */
- public void setImage(byte[] image)
- {
- this.image = image;
- }
-
- /**
- * Whether the current image returned by @see #getImage() is the one
- * provided by the SourceContact by default, or is a one used and obtained
- * from external source.
- *
- * @return whether this is the default image for this SourceContact.
- */
- @Override
- public boolean isDefaultImage()
- {
- // in this SourceContact we always show an externally set image or null
- return false;
- }
-
- /**
- * Returns the status of the source contact. And null if such information
- * is not available.
- * @return the PresenceStatus representing the state of this source contact.
- */
- public PresenceStatus getPresenceStatus()
- {
- return presenceStatus;
- }
-
- /**
- * Sets the status of the source contact.
- *
- * @param presenceStatus the status of this contact
- */
- public void setPresenceStatus(PresenceStatus presenceStatus)
- {
- this.presenceStatus = presenceStatus;
- }
-
- /**
- * Returns the index of this source contact in its parent.
- *
- * @return the index of this source contact in its parent
- */
- public int getIndex()
- {
- return -1;
- }
-}
+package net.java.sip.communicator.service.contactsource;
+
+import java.util.*;
+
+import net.java.sip.communicator.service.protocol.*;
+import net.java.sip.communicator.util.*;
+
+/**
+ * Implements a generic <tt>SourceContact</tt> for the purposes of the support
+ * for the OS-specific Address Book.
+ *
+ * @author Lyubomir Marinov
+ */
+public class GenericSourceContact
+ extends DataObject
+ implements SourceContact
+{
+ /**
+ * The <tt>ContactDetail</tt>s of this <tt>SourceContact</tt>.
+ */
+ protected final List<ContactDetail> contactDetails;
+
+ /**
+ * The <tt>ContactSourceService</tt> which has created this
+ * <tt>SourceContact</tt>.
+ */
+ private final ContactSourceService contactSource;
+
+ /**
+ * The display name of this <tt>SourceContact</tt>.
+ */
+ private String displayName;
+
+ /**
+ * The display details of this contact.
+ */
+ private String displayDetails;
+
+ /**
+ * The presence status of this contact.
+ */
+ private PresenceStatus presenceStatus;
+
+ /**
+ * The image/avatar of this <tt>SourceContact</tt>
+ */
+ private byte[] image;
+
+ /**
+ * The address of the contact.
+ */
+ private String contactAddress = null;
+
+ /**
+ * Initializes a new <tt>AddrBookSourceContact</tt> instance.
+ *
+ * @param contactSource the <tt>ContactSourceService</tt> which is creating
+ * the new instance
+ * @param displayName the display name of the new instance
+ * @param contactDetails the <tt>ContactDetail</tt>s of the new instance
+ */
+ public GenericSourceContact(
+ ContactSourceService contactSource,
+ String displayName,
+ List<ContactDetail> contactDetails)
+ {
+ this.contactSource = contactSource;
+ this.displayName = displayName;
+ this.contactDetails = contactDetails;
+ }
+
+ /**
+ * Returns the address of the contact.
+ *
+ * @return the contact address.
+ */
+ public String getContactAddress()
+ {
+ return contactAddress;
+ }
+
+ /**
+ * Gets the <tt>ContactDetail</tt>s of this <tt>SourceContact</tt>.
+ *
+ * @return the <tt>ContactDetail</tt>s of this <tt>SourceContact</tt>
+ * @see SourceContact#getContactDetails()
+ */
+ public List<ContactDetail> getContactDetails()
+ {
+ return Collections.unmodifiableList(contactDetails);
+ }
+
+ /**
+ * Gets the <tt>ContactDetail</tt>s of this <tt>SourceContact</tt> which
+ * support a specific <tt>OperationSet</tt>.
+ *
+ * @param operationSet the <tt>OperationSet</tt> the supporting
+ * <tt>ContactDetail</tt>s of which are to be returned
+ * @return the <tt>ContactDetail</tt>s of this <tt>SourceContact</tt> which
+ * support the specified <tt>operationSet</tt>
+ * @see SourceContact#getContactDetails(Class)
+ */
+ public List<ContactDetail> getContactDetails(
+ Class<? extends OperationSet> operationSet)
+ {
+ List<ContactDetail> contactDetails = new LinkedList<ContactDetail>();
+
+ for (ContactDetail contactDetail : getContactDetails())
+ {
+ List<Class<? extends OperationSet>> supportedOperationSets
+ = contactDetail.getSupportedOperationSets();
+
+ if ((supportedOperationSets != null)
+ && supportedOperationSets.contains(operationSet))
+ contactDetails.add(contactDetail);
+ }
+ return contactDetails;
+ }
+
+ /**
+ * Returns a list of all <tt>ContactDetail</tt>s corresponding to the given
+ * category.
+ * @param category the <tt>OperationSet</tt> class we're looking for
+ * @return a list of all <tt>ContactDetail</tt>s corresponding to the given
+ * category
+ */
+ public List<ContactDetail> getContactDetails(
+ ContactDetail.Category category)
+ {
+ List<ContactDetail> contactDetails = new LinkedList<ContactDetail>();
+
+ for (ContactDetail contactDetail : getContactDetails())
+ {
+ if(contactDetail != null)
+ {
+ ContactDetail.Category detailCategory
+ = contactDetail.getCategory();
+ if (detailCategory != null && detailCategory.equals(category))
+ contactDetails.add(contactDetail);
+ }
+ }
+ return contactDetails;
+ }
+
+ /**
+ * Gets the <tt>ContactSourceService</tt> which has created this
+ * <tt>SourceContact</tt>.
+ *
+ * @return the <tt>ContactSourceService</tt> which has created this
+ * <tt>SourceContact</tt>
+ * @see SourceContact#getContactSource()
+ */
+ public ContactSourceService getContactSource()
+ {
+ return contactSource;
+ }
+
+ /**
+ * Gets the display details of this <tt>SourceContact</tt>.
+ *
+ * @return the display details of this <tt>SourceContact</tt>
+ * @see SourceContact#getDisplayDetails()
+ */
+ public String getDisplayDetails()
+ {
+ return displayDetails;
+ }
+
+ /**
+ * Sets the address of the contact.
+ *
+ * @param contactAddress the address to set.
+ */
+ public void setContactAddress(String contactAddress)
+ {
+ this.contactAddress = contactAddress;
+ }
+
+ /**
+ * Sets the display details of this <tt>SourceContact</tt>.
+ *
+ * @param displayDetails the display details of this <tt>SourceContact</tt>
+ */
+ public String setDisplayDetails(String displayDetails)
+ {
+ return this.displayDetails = displayDetails;
+ }
+
+ /**
+ * Gets the display name of this <tt>SourceContact</tt>.
+ *
+ * @return the display name of this <tt>SourceContact</tt>
+ * @see SourceContact#getDisplayName()
+ */
+ public String getDisplayName()
+ {
+ return displayName;
+ }
+
+ /**
+ * Sets the display name of this <tt>SourceContact</tt>.
+ *
+ * @param displayName The display name of this <tt>SourceContact</tt>
+ */
+ public void setDisplayName(String displayName)
+ {
+ this.displayName = displayName;
+ }
+
+ /**
+ * Gets the image/avatar of this <tt>SourceContact</tt>.
+ *
+ * @return the image/avatar of this <tt>SourceContact</tt>
+ * @see SourceContact#getImage()
+ */
+ public byte[] getImage()
+ {
+ return image;
+ }
+
+ /**
+ * Gets the preferred <tt>ContactDetail</tt> for a specific
+ * <tt>OperationSet</tt>.
+ *
+ * @param operationSet the <tt>OperationSet</tt> to get the preferred
+ * <tt>ContactDetail</tt> for
+ * @return the preferred <tt>ContactDetail</tt> for the specified
+ * <tt>operationSet</tt>
+ * @see SourceContact#getPreferredContactDetail(Class)
+ */
+ public ContactDetail getPreferredContactDetail(
+ Class<? extends OperationSet> operationSet)
+ {
+ List<ContactDetail> contactDetails = getContactDetails(operationSet);
+
+ return contactDetails.isEmpty() ? null : contactDetails.get(0);
+ }
+
+ /**
+ * Sets the image/avatar of this <tt>SourceContact</tt>.
+ *
+ * @param image the image/avatar to be set on this <tt>SourceContact</tt>
+ */
+ public void setImage(byte[] image)
+ {
+ this.image = image;
+ }
+
+ /**
+ * Whether the current image returned by @see #getImage() is the one
+ * provided by the SourceContact by default, or is a one used and obtained
+ * from external source.
+ *
+ * @return whether this is the default image for this SourceContact.
+ */
+ @Override
+ public boolean isDefaultImage()
+ {
+ // in this SourceContact we always show an externally set image or null
+ return false;
+ }
+
+ /**
+ * Returns the status of the source contact. And null if such information
+ * is not available.
+ * @return the PresenceStatus representing the state of this source contact.
+ */
+ public PresenceStatus getPresenceStatus()
+ {
+ return presenceStatus;
+ }
+
+ /**
+ * Sets the status of the source contact.
+ *
+ * @param presenceStatus the status of this contact
+ */
+ public void setPresenceStatus(PresenceStatus presenceStatus)
+ {
+ this.presenceStatus = presenceStatus;
+ }
+
+ /**
+ * Returns the index of this source contact in its parent.
+ *
+ * @return the index of this source contact in its parent
+ */
+ public int getIndex()
+ {
+ return -1;
+ }
+}