Package com.github.hakko.musiccabinet.domain.model.library

Source Code of com.github.hakko.musiccabinet.domain.model.library.File

package com.github.hakko.musiccabinet.domain.model.library;

import java.nio.file.Path;
import java.nio.file.attribute.BasicFileAttributes;

import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.joda.time.DateTime;

public class File {

  private String directory;
  private String filename;
  private DateTime modified;
  private int size;
  private MetaData metaData;
 
  public File(Path path, BasicFileAttributes attr) {
    this(path.getParent().toString(), path.getFileName().toString(),
    new DateTime(attr.lastModifiedTime().toMillis()), (int) attr.size());
  }
 
  public File(String directory, String filename, DateTime modified, int size) {
    this.directory = directory;
    this.filename = filename;
    this.modified = modified;
    this.size = size;
  }

  public String getDirectory() {
    return directory;
  }

  public void setDirectory(String directory) {
    this.directory = directory;
  }

  public String getFilename() {
    return filename;
  }

  public void setFilename(String filename) {
    this.filename = filename;
  }

  public DateTime getModified() {
    return modified;
  }

  public void setModified(DateTime modified) {
    this.modified = modified;
  }

  public int getSize() {
    return size;
  }

  public void setSize(int size) {
    this.size = size;
  }

  public MetaData getMetaData() {
    return metaData;
  }

  public void setMetaData(MetaData metaData) {
    this.metaData = metaData;
  }
 
  public MetaData getMetadata() {
    return metaData;
  }
 
  @Override
  public int hashCode() {
    return new HashCodeBuilder()
    .append(directory)
    .append(filename)
    .append(modified)
    .append(size)
    .toHashCode();
  }

  @Override
  public boolean equals(Object o) {
    if (o == null) return false;
    if (o == this) return true;
    if (o.getClass() != getClass()) return false;

    File f = (File) o;
    return new EqualsBuilder()
    .append(directory, f.directory)
    .append(filename, f.filename)
    .append(modified, f.modified)
    .append(size, f.size)
    .isEquals();
  }
 
  @Override
  public String toString() {
    return filename;
  }

}
TOP

Related Classes of com.github.hakko.musiccabinet.domain.model.library.File

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.