From c8a217ab4f6ab9cc885543737d65be76d3d1429b Mon Sep 17 00:00:00 2001 From: David McKnight Date: Wed, 23 Jan 2008 14:50:21 +0000 Subject: [PATCH] [209593] changed duplcate to use Cloneable and override Object.clone() --- .../propertypages/SystemFilePermissionsPropertyPage.java | 3 ++- .../eclipse/rse/services/files/HostFilePermissions.java | 9 +++++---- .../eclipse/rse/services/files/IHostFilePermissions.java | 7 +------ 3 files changed, 8 insertions(+), 11 deletions(-) diff --git a/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/propertypages/SystemFilePermissionsPropertyPage.java b/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/propertypages/SystemFilePermissionsPropertyPage.java index e306c972f01..0bf90dff604 100644 --- a/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/propertypages/SystemFilePermissionsPropertyPage.java +++ b/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/internal/files/ui/propertypages/SystemFilePermissionsPropertyPage.java @@ -24,6 +24,7 @@ import org.eclipse.rse.core.events.ISystemResourceChangeEvents; import org.eclipse.rse.core.events.SystemResourceChangeEvent; import org.eclipse.rse.core.model.ISystemRegistry; import org.eclipse.rse.internal.files.ui.FileResources; +import org.eclipse.rse.services.files.HostFilePermissions; import org.eclipse.rse.services.files.IFilePermissionsService; import org.eclipse.rse.services.files.IHostFilePermissions; import org.eclipse.rse.services.files.PendingHostFilePermissions; @@ -351,7 +352,7 @@ public class SystemFilePermissionsPropertyPage extends SystemBasePropertyPage { if ((capabilities & IFilePermissionsService.FS_CAN_SET_PERMISSIONS) != 0){ try { - IHostFilePermissions newPermissions = _permissions.duplicate(); + IHostFilePermissions newPermissions = (IHostFilePermissions)((HostFilePermissions)_permissions).clone(); if (_permissions.getPermission(IHostFilePermissions.PERM_USER_READ) != _userRead.getSelection()){ changed = true; diff --git a/rse/plugins/org.eclipse.rse.services/src/org/eclipse/rse/services/files/HostFilePermissions.java b/rse/plugins/org.eclipse.rse.services/src/org/eclipse/rse/services/files/HostFilePermissions.java index 746a112d138..c317421d235 100644 --- a/rse/plugins/org.eclipse.rse.services/src/org/eclipse/rse/services/files/HostFilePermissions.java +++ b/rse/plugins/org.eclipse.rse.services/src/org/eclipse/rse/services/files/HostFilePermissions.java @@ -106,7 +106,7 @@ public class HostFilePermissions implements } public String toString(){ - return "" + _permissions; + return "" + _permissions; //$NON-NLS-1$ } private boolean isSet(long mask) { @@ -155,8 +155,9 @@ public class HostFilePermissions implements _user = user; } - public IHostFilePermissions duplicate(){ - IHostFilePermissions clone = new HostFilePermissions(getPermissionBits(), getUserOwner(), getGroupOwner()); - return clone; + public Object clone() throws CloneNotSupportedException { + return super.clone(); } + + } diff --git a/rse/plugins/org.eclipse.rse.services/src/org/eclipse/rse/services/files/IHostFilePermissions.java b/rse/plugins/org.eclipse.rse.services/src/org/eclipse/rse/services/files/IHostFilePermissions.java index 99703620e83..277a5b99858 100644 --- a/rse/plugins/org.eclipse.rse.services/src/org/eclipse/rse/services/files/IHostFilePermissions.java +++ b/rse/plugins/org.eclipse.rse.services/src/org/eclipse/rse/services/files/IHostFilePermissions.java @@ -14,7 +14,7 @@ package org.eclipse.rse.services.files; -public interface IHostFilePermissions { +public interface IHostFilePermissions extends Cloneable { /** * Permission constant indicating that @@ -144,9 +144,4 @@ public interface IHostFilePermissions { */ public void setGroupOwner(String group); - /** - * Create a duplicate of a set of permissions - * @return the duplicate - */ - public IHostFilePermissions duplicate(); }