/**
*
* TURTLE PLAYER
*
* Licensed under MIT & GPL
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
* PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE
* OR OTHER DEALINGS IN THE SOFTWARE.
*
* More Information @ www.turtle-player.co.uk
*
* @author Simon Honegger (Hoene84)
*/
package com.turtleplayer.model;
import com.turtleplayer.util.Shorty;
public class SongDigest implements Song
{
private static final String EMPTY_REPLACMENT= "Unknown";
private final String id;
public SongDigest(String id)
{
this.id = id;
}
public String getSongId()
{
return id;
}
public String getSongName()
{
return Shorty.isVoid(id) ? EMPTY_REPLACMENT : id;
}
@Override
public boolean equals(Object o)
{
if (this == o) return true;
if (!(o instanceof SongDigest)) return false;
SongDigest that = (SongDigest) o;
if (id != null ? !id.equals(that.id) : that.id != null) return false;
return true;
}
@Override
public int hashCode()
{
return id != null ? id.hashCode() : 0;
}
public <R> R accept(InstanceVisitor<R> visitor)
{
return visitor.visit(this);
}
}