public override bool Equals(Object obj) { FileIOPermission perm = obj as FileIOPermission; if (perm == null) { return(false); } if (m_unrestricted && perm.m_unrestricted) { return(true); } if (m_unrestricted != perm.m_unrestricted) { return(false); } if (m_read == null) { if (perm.m_read != null && !perm.m_read.IsEmpty()) { return(false); } } else if (!m_read.Equals(perm.m_read)) { return(false); } if (m_write == null) { if (perm.m_write != null && !perm.m_write.IsEmpty()) { return(false); } } else if (!m_write.Equals(perm.m_write)) { return(false); } if (m_append == null) { if (perm.m_append != null && !perm.m_append.IsEmpty()) { return(false); } } else if (!m_append.Equals(perm.m_append)) { return(false); } if (m_pathDiscovery == null) { if (perm.m_pathDiscovery != null && !perm.m_pathDiscovery.IsEmpty()) { return(false); } } else if (!m_pathDiscovery.Equals(perm.m_pathDiscovery)) { return(false); } if (m_viewAcl == null) { if (perm.m_viewAcl != null && !perm.m_viewAcl.IsEmpty()) { return(false); } } else if (!m_viewAcl.Equals(perm.m_viewAcl)) { return(false); } if (m_changeAcl == null) { if (perm.m_changeAcl != null && !perm.m_changeAcl.IsEmpty()) { return(false); } } else if (!m_changeAcl.Equals(perm.m_changeAcl)) { return(false); } return(true); }