CmisSync.Lib.Sync.CmisRepo.SynchronizedFolder.MoveFolder C# (CSharp) 메소드

MoveFolder() 개인적인 메소드

Move a folder remotely.
private MoveFolder ( string oldDirectory, string newDirectory, IFolder oldRemoteFolder, IFolder newRemoteFolder, IFolder remoteFolder ) : bool
oldDirectory string
newDirectory string
oldRemoteFolder IFolder
newRemoteFolder IFolder
remoteFolder IFolder
리턴 bool
            private bool MoveFolder(string oldDirectory, string newDirectory, IFolder oldRemoteFolder, IFolder newRemoteFolder, IFolder remoteFolder)
            {
                SleepWhileSuspended();

                string oldPathname = Path.Combine(oldDirectory, remoteFolder.Name);
                string newPathname = Path.Combine(newDirectory, remoteFolder.Name);
                try
                {

                    Logger.InfoFormat("Moving: {0} -> {1}", oldPathname, newPathname);


                    IFolder updatedFolder = (IFolder)remoteFolder.Move(oldRemoteFolder, newRemoteFolder);

                    // Update the path in the database...
                    database.MoveFolder(SyncItemFactory.CreateFromLocalPath(oldPathname, true, repoInfo, database),
                        SyncItemFactory.CreateFromLocalPath(newPathname, true, repoInfo, database));      // database query

                    Logger.InfoFormat("Moved folder: {0} -> {1}", oldPathname, newPathname);
                    return true;
                }
                catch (Exception e)
                {
                    ProcessRecoverableException(String.Format("Could not move folder: {0} -> {1}", oldPathname, newPathname), e);
                    return false;
                }
            }