Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: com/virtuosotechnologies/asaph/model/SongID.java


1   /*
2   ================================================================================
3   
4     FILE:  SongID.java
5     
6     PROJECT:
7     
8       Asaph
9     
10    CONTENTS:
11    
12      Interface to a song ID
13    
14    PROGRAMMERS:
15    
16      Daniel Azuma (DA)  <dazuma@kagi.com>
17    
18    COPYRIGHT:
19    
20      Copyright (C) 2003  Daniel Azuma  (dazuma@kagi.com)
21      
22      This program is free software; you can redistribute it and/or
23      modify it under the terms of the GNU General Public License as
24      published by the Free Software Foundation; either version 2
25      of the License, or (at your option) any later version.
26      
27      This program is distributed in the hope that it will be useful,
28      but WITHOUT ANY WARRANTY; without even the implied warranty of
29      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
30      GNU General Public License for more details.
31      
32      You should have received a copy of the GNU General Public
33      License along with this program; if not, write to
34        Free Software Foundation, Inc.
35        59 Temple Place, Suite 330
36        Boston, MA 02111-1307 USA
37  
38  ================================================================================
39  */
40  
41  
42  package com.virtuosotechnologies.asaph.model;
43  
44  
45  /**
46   * A Song ID. This object identifies a Song in a SongDatabase and can be
47   * used to quickly check out a copy of the Song. SongID also contains a
48   * unique and immutable String representation that may be used to serialize
49   * and deserialize the SongID. The string is guaranteed to be unique within
50   * a particular database, and will remain the same for same song across
51   * different executions of the tool. However, two songs from different
52   * databases may have the same string representation.
53   */
54  public interface SongID
55  {
56    /**
57     * Get the database that owns this song
58     *
59     * @return SongDatabase
60     */
61    public SongDatabase getDatabase();
62    
63    
64    /**
65     * Get the string representation
66     *
67     * @return String
68     */
69    public String getStringRepresentation();
70    
71    
72    /**
73     * Equals
74     */
75    public boolean equals(
76      Object obj);
77  }