[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [Subclipse-users] java.lang.IllegalAr​gumentException: Attempted to beginRule:

From: Mark Phippard <markphip_at_gmail.com>
Date: Tue, 26 Jun 2012 13:39:18 -0400

Did you try with 1.8.12 which was released last week? It included a
fix to a schedule rule violation.

On Tue, Jun 26, 2012 at 1:35 PM, Dyutimoy Sarkar
<dyutimoysarkar_at_gmail.com> wrote:
> Hi,
>
> I am using subclipse installed from the update site: http://subclipse.tigris.org/update_1.8.x
> subclipse: 1.8.11
> subversion client adapter: 1.8.3
> subversion javaHL native library Adapter: 1.7.5.2
>
> I am getting exception "java.lang.IllegalArgumentException: Attempted to beginRule: F/AppRules/src, does not match outer scope rule: F/AppRules/src/elvis" when I try to perform move operation using the interface org.eclipse.core.resources.IResource and the method public void move(IPath destination, boolean force, IProgressMonitor monitor) throws CoreException; Stack trace reported is
> java.lang.IllegalArgumentException: Attempted to beginRule: F/AppRules/src, does not match outer scope rule: F/AppRules/src/elvis
>    at org.eclipse.core.runtime.Assert.isLegal(Assert.java:63)
>    at org.eclipse.core.internal.jobs.ThreadJob.illegalPush(ThreadJob.java:120)
>    at org.eclipse.core.internal.jobs.ThreadJob.push(ThreadJob.java:230)
>    at org.eclipse.core.internal.jobs.ImplicitJobs.begin(ImplicitJobs.java:58)
>    at org.eclipse.core.internal.jobs.JobManager.beginRule(JobManager.java:232)
>    at org.eclipse.core.internal.resources.WorkManager.checkIn(WorkManager.java:117)
>    at org.eclipse.core.internal.resources.Workspace.prepareOperation(Workspace.java:1747)
>    at org.eclipse.core.internal.resources.Resource.refreshLocal(Resource.java:1522)
>    at org.tigris.subversion.subclipse.core.client.OperationManager.endOperation(OperationManager.java:125)
>    at org.tigris.subversion.subclipse.core.client.OperationManager.endOperation(OperationManager.java:93)
>    at org.tigris.subversion.subclipse.core.resources.SVNMoveDeleteHook.moveFile(SVNMoveDeleteHook.java:187)
>    at org.eclipse.team.internal.core.MoveDeleteManager.moveFile(MoveDeleteManager.java:87)
>    at org.eclipse.core.internal.resources.Resource.unprotectedMove(Resource.java:1794)
>    at org.eclipse.core.internal.resources.Resource.move(Resource.java:1464)
>    at org.eclipse.core.internal.resources.Resource.move(Resource.java:1432)
>    at com.ebay.rules.tools.authoring.rename.wizard.RuleRenameWizardHandler.renameAndSetContentsForRule(RuleRenameWizardHandler.java:435)
>    at com.ebay.rules.tools.authoring.rename.wizard.RuleRenameWizardHandler.access$5(RuleRenameWizardHandler.java:384)
>    at com.ebay.rules.tools.authoring.rename.wizard.RuleRenameWizardHandler$RuleRename.renameRule(RuleRenameWizardHandler.java:320)
>    at com.ebay.rules.tools.authoring.rename.wizard.RuleRenameWizardHandler$RuleRename.run(RuleRenameWizardHandler.java:213)
>    at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:464)
>    at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:372)
>    at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:507)
>    at com.ebay.rules.tools.authoring.util.RuleAuthoringUtil.openProgressMonitor(RuleAuthoringUtil.java:1050)
>    at com.ebay.rules.tools.authoring.rename.wizard.RuleRenameWizardHandler.execute(RuleRenameWizardHandler.java:93)
>    at org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:294)
>    at org.eclipse.core.commands.Command.executeWithChecks(Command.java:476)
>    at org.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:508)
>    at org.eclipse.ui.internal.handlers.HandlerService.executeCommand(HandlerService.java:169)
>    at org.eclipse.ui.internal.handlers.SlaveHandlerService.executeCommand(SlaveHandlerService.java:241)
>    at org.eclipse.ui.internal.handlers.SlaveHandlerService.executeCommand(SlaveHandlerService.java:241)
>    at org.eclipse.ui.menus.CommandContributionItem.handleWidgetSelection(CommandContributionItem.java:770)
>    at org.eclipse.ui.menus.CommandContributionItem.access$10(CommandContributionItem.java:756)
>    at org.eclipse.ui.menus.CommandContributionItem$5.handleEvent(CommandContributionItem.java:746)
>    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
>    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003)
>    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3910)
>    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3503)
>    at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405)
>    at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369)
>    at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2221)
>    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500)
>    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
>    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493)
>    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
>    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113)
>    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
>    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
>    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
>    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
>    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
>    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
>    at java.lang.reflect.Method.invoke(Method.java:599)
>    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
>    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
>    at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
>    at org.eclipse.equinox.launcher.Main.main(Main.java:1287)
>
> This can be reproduced using the following steps.
>
> 1. Please create AppRules Project
> 2. Please create the following folder structure in the AppRules project. src/elvis.
> 3. Create a file in the folder src/elvis. You can name the file OldFile.java
> 4. Using IResource.move(IPath destination, boolean force, IProgressMonitor monitor), please rename OldFile.java to RenamedFile.java.
>   e.g oldRuleFile.move(reNamedFile.getFullPath(), true,new NullProgressMonitor());
>
>
> When I dug into the problem I saw that mehtod move(IPath destination, boolean force, IProgressMonitor monitor) in the org.eclipse.core.internal.resources.Resource actually sets a move rule
> for the folder F/AppRules/src/elvis ( this is the rule top of the stack points to currently) . It subsequently delegates the call to SVNMoveDeleteHook to move the file. In the SVNMoveDeleteHook's move method, a call is made to OperationManager.getInstance().endOperation(false), which internally sets the refresh rule for on the folder F/AppRules/src and now the top of stack points to F/AppRules/src. Since we have more generic rule at the top of the stack, when there is a more specific rule already in the stack the exception mentioned above is thrown.
>
>
> Can you please help me to find I am doing anything wrong or is it an issue with the Subclipse.
>
> ------------------------------------------------------
> http://subclipse.tigris.org/ds/viewMessage.do?dsForumId=1047&dsMessageId=2973345
>
> To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_subclipse.tigris.org].

-- 
Thanks
Mark Phippard
http://markphip.blogspot.com/
------------------------------------------------------
http://subclipse.tigris.org/ds/viewMessage.do?dsForumId=1047&dsMessageId=2973346
To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_subclipse.tigris.org].
Received on 2012-06-26 19:39:26 CEST

This is an archived mail posted to the Subclipse Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.