Package se.despotify.util

Source Code of se.despotify.util.ChecksumCalculator

package se.despotify.util;

import se.despotify.domain.media.*;

import java.util.zip.Adler32;

/**
* @since 2009-apr-25 21:59:26
*/
public class ChecksumCalculator extends VisitorAdapter {

  private Adler32 checksum;

  public ChecksumCalculator() {
    checksum = new Adler32();
  }

  public long getValue() {
    return checksum.getValue();
  }

  @Override
  public void visit(Album album) {
    checksum.update(album.getUUID());
    checksum.update((byte)0x02);
  }

  @Override
  public void visit(Artist artist) {
    checksum.update(artist.getUUID());
    checksum.update((byte)0x02);
  }

  @Override
  public void visit(Playlist playlist) {
    checksum.update(playlist.getUUID());
    checksum.update((byte)0x02); // verified 0x02
  }

  @Override
  public void visit(Track track) {
    checksum.update(track.getUUID());
    checksum.update((byte)0x01)// verified 0x01
  }

  public Adler32 getChecksum() {
    return checksum;
  }
}
TOP

Related Classes of se.despotify.util.ChecksumCalculator

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.