/*
* Copyright (C) 2007 Esmertec AG. Copyright (C) 2007 The Android Open Source
* Project
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package org.awesomeapp.messenger.model;
import android.os.Parcel;
import android.text.TextUtils;
/**
* An abstract representation of the address to any addressable entities such as
* User, Contact list, User Group, etc.
*/
public abstract class Address {
/**
* Gets a string representation of this address.
*
* @return a string representation of this address.
*/
public abstract String getAddress();
/**
* Gets a user friendly screen name of this address object.
*
* @return the screen name.
*/
public abstract String getUser();
/**
* Gets a resource value
*
* @return the resource name.
*/
public abstract String getResource();
/**
* Gets the bare address without any resource
* @return the bare address
*/
public abstract String getBareAddress();
public abstract void writeToParcel(Parcel dest);
public abstract void readFromParcel(Parcel source);
static public boolean hasResource(String address) {
return address.contains("/");
}
static public String stripResource(String address) {
if (TextUtils.isEmpty(address))
return "null";
else if (address.contains("/"))
return address.split("/")[0];
else
return address;
}
}