/* * Copyright (C) 2012 The CyanogenMod 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 com.cyanogenmod.filemanager.model; import java.io.Serializable; /** * A class that holds information about a mount point. */ public class MountPoint implements Serializable, Comparable<MountPoint> { private static final long serialVersionUID = 6283618345819358175L; private final String mMountPoint; private final String mDevice; private final String mType; private final String mOptions; private final int mDump; private final int mPass; /** * Constructor of <code>MountPoint</code>. * * @param mountPoint The mount point of the file system device * @param device The file system device * @param type The type of file system * @param options The mount options * @param dump The frequency to determine if the filesystem need to be dumped * @param pass The order in which filesystem checks are done at reboot time */ public MountPoint( String mountPoint, String device, String type, String options, int dump, int pass) { super(); this.mMountPoint = mountPoint; this.mDevice = device; this.mType = type; this.mOptions = options; this.mDump = dump; this.mPass = pass; } /** * Method that returns the mount point of the file system device. * * @return String The mount point of the file system device */ public String getMountPoint() { return this.mMountPoint; } /** * Method that returns the file system device. * * @return String The file system device */ public String getDevice() { return this.mDevice; } /** * Method that returns the type of file system. * * @return String The type of file system */ public String getType() { return this.mType; } /** * Method that returns the mount options. * * @return String The mount options */ public String getOptions() { return this.mOptions; } /** * Method that returns the frequency to determine if the filesystem need to be dumped. * * @return long The frequency to determine if the filesystem need to be dumped */ public int getDump() { return this.mDump; } /** * Method that returns the frequency to determine if the order in which filesystem * checks are done at reboot time. * * @return long The order in which filesystem checks are done at reboot time */ public int getPass() { return this.mPass; } /** * {@inheritDoc} */ @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + this.mDump; result = prime * result + ((this.mDevice == null) ? 0 : this.mDevice.hashCode()); result = prime * result + ((this.mMountPoint == null) ? 0 : this.mMountPoint.hashCode()); result = prime * result + ((this.mOptions == null) ? 0 : this.mOptions.hashCode()); result = prime * result + this.mPass; result = prime * result + ((this.mType == null) ? 0 : this.mType.hashCode()); return result; } /** * {@inheritDoc} */ @Override public boolean equals(Object obj) { if (this == obj) { return true; } if (obj == null) { return false; } if (getClass() != obj.getClass()) { return false; } MountPoint other = (MountPoint) obj; if (this.mDump != other.mDump) { return false; } if (this.mDevice == null) { if (other.mDevice != null) { return false; } } else if (!this.mDevice.equals(other.mDevice)) { return false; } if (this.mMountPoint == null) { if (other.mMountPoint != null) { return false; } } else if (!this.mMountPoint.equals(other.mMountPoint)) { return false; } if (this.mOptions == null) { if (other.mOptions != null) { return false; } } else if (!this.mOptions.equals(other.mOptions)) { return false; } if (this.mPass != other.mPass) { return false; } if (this.mType == null) { if (other.mType != null) { return false; } } else if (!this.mType.equals(other.mType)) { return false; } return true; } /** * {@inheritDoc} */ @Override public String toString() { return "MountPoint [mountPoint=" + this.mMountPoint + ", device=" //$NON-NLS-1$//$NON-NLS-2$ + this.mDevice + ", type=" //$NON-NLS-1$ + this.mType + ", options=" + this.mOptions //$NON-NLS-1$ + ", dump=" + this.mDump + ", pass=" //$NON-NLS-1$//$NON-NLS-2$ + this.mPass + "]"; //$NON-NLS-1$ } /** * {@inheritDoc} */ @Override public int compareTo(MountPoint another) { return this.mMountPoint.compareTo(another.mMountPoint); } }