Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 211275 Details for
Bug 364828
[Sequence Diagram] - Messages deletion
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
Bug fix
Bug 364828 - Messages_deletion.patch (text/plain), 21.15 KB, created by
Yves YANG
on 2012-02-20 09:59:52 EST
(
hide
)
Description:
Bug fix
Filename:
MIME Type:
Creator:
Yves YANG
Created:
2012-02-20 09:59:52 EST
Size:
21.15 KB
patch
obsolete
>Index: custom-src/org/eclipse/papyrus/uml/diagram/sequence/util/SequenceDeleteHelper.java >=================================================================== >--- custom-src/org/eclipse/papyrus/uml/diagram/sequence/util/SequenceDeleteHelper.java (revision 7212) >+++ custom-src/org/eclipse/papyrus/uml/diagram/sequence/util/SequenceDeleteHelper.java (working copy) >@@ -21,20 +21,29 @@ > import org.eclipse.gef.EditPart; > import org.eclipse.gef.commands.Command; > import org.eclipse.gef.commands.CompoundCommand; >+import org.eclipse.gef.commands.UnexecutableCommand; >+import org.eclipse.gmf.runtime.common.core.command.CompositeCommand; >+import org.eclipse.gmf.runtime.common.core.command.ICommand; > import org.eclipse.gmf.runtime.diagram.core.commands.DeleteCommand; > import org.eclipse.gmf.runtime.diagram.ui.commands.ICommandProxy; > import org.eclipse.gmf.runtime.diagram.ui.editparts.ConnectionNodeEditPart; > import org.eclipse.gmf.runtime.diagram.ui.editparts.IBorderItemEditPart; > import org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart; > import org.eclipse.gmf.runtime.emf.commands.core.command.CompositeTransactionalCommand; >+import org.eclipse.gmf.runtime.emf.type.core.commands.DestroyElementCommand; >+import org.eclipse.gmf.runtime.emf.type.core.requests.DestroyElementRequest; > import org.eclipse.gmf.runtime.notation.View; >+import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils; >+import org.eclipse.papyrus.infra.services.edit.service.IElementEditService; > import org.eclipse.papyrus.uml.diagram.common.util.DiagramEditPartsUtil; > import org.eclipse.papyrus.uml.diagram.sequence.edit.parts.LifelineEditPart; > import org.eclipse.uml2.uml.DestructionOccurrenceSpecification; > import org.eclipse.uml2.uml.Element; >+import org.eclipse.uml2.uml.Event; > import org.eclipse.uml2.uml.ExecutionSpecification; > import org.eclipse.uml2.uml.Message; > import org.eclipse.uml2.uml.MessageEnd; >+import org.eclipse.uml2.uml.MessageOccurrenceSpecification; > import org.eclipse.uml2.uml.OccurrenceSpecification; > > /** >@@ -201,4 +210,34 @@ > } > } > } >+ >+ public static Command completeDeleteMessageCommand(DestroyElementRequest req) { >+ EObject selectedEObject = req.getElementToDestroy(); >+ IElementEditService provider = ElementEditServiceUtils >+ .getCommandProvider(selectedEObject); >+ if (provider != null) { >+ // Retrieve delete command from the Element Edit service >+ ICommand deleteCommand = provider.getEditCommand(req); >+ if (deleteCommand != null) { >+ CompositeCommand command = new CompositeCommand( >+ deleteCommand.getLabel()); >+ command.add(deleteCommand); >+ Message message = (Message) selectedEObject; >+ MessageEnd receiveEvent = message.getReceiveEvent(); >+ if (receiveEvent != null) { >+ DestroyElementRequest myReq = new DestroyElementRequest( >+ req.getEditingDomain(), receiveEvent, false); >+ command.add(new DestroyElementCommand(myReq)); >+ } >+ MessageEnd sendEvent = message.getSendEvent(); >+ if (sendEvent != null) { >+ DestroyElementRequest myReq = new DestroyElementRequest( >+ req.getEditingDomain(), sendEvent, false); >+ command.add(new DestroyElementCommand(myReq)); >+ } >+ return new ICommandProxy(command); >+ } >+ } >+ return UnexecutableCommand.INSTANCE; >+ } > } >Index: src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/MessageItemSemanticEditPolicy.java >=================================================================== >--- src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/MessageItemSemanticEditPolicy.java (revision 7212) >+++ src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/MessageItemSemanticEditPolicy.java (working copy) >@@ -13,13 +13,9 @@ > *****************************************************************************/ > package org.eclipse.papyrus.uml.diagram.sequence.edit.policies; > >-import org.eclipse.emf.ecore.EObject; > import org.eclipse.gef.commands.Command; > import org.eclipse.gef.commands.CompoundCommand; >-import org.eclipse.gef.commands.UnexecutableCommand; >-import org.eclipse.gmf.runtime.common.core.command.ICommand; > import org.eclipse.gmf.runtime.diagram.core.commands.DeleteCommand; >-import org.eclipse.gmf.runtime.diagram.ui.commands.ICommandProxy; > import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.CreateRelationshipRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.DestroyElementRequest; >@@ -27,8 +23,6 @@ > import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientReferenceRelationshipRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientRelationshipRequest; > import org.eclipse.gmf.runtime.notation.View; >-import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils; >-import org.eclipse.papyrus.infra.services.edit.service.IElementEditService; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.CommentAnnotatedElementCreateCommand; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.CommentAnnotatedElementReorientCommand; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.ConstraintConstrainedElementCreateCommand; >@@ -90,20 +84,10 @@ > } > > /** >- * @generated >+ * @generated NOT > */ > protected Command getDestroyElementCommand(DestroyElementRequest req) { >- EObject selectedEObject = req.getElementToDestroy(); >- IElementEditService provider = ElementEditServiceUtils.getCommandProvider(selectedEObject); >- if(provider != null) { >- // Retrieve delete command from the Element Edit service >- ICommand deleteCommand = provider.getEditCommand(req); >- >- if(deleteCommand != null) { >- return new ICommandProxy(deleteCommand); >- } >- } >- return UnexecutableCommand.INSTANCE; >+ return SequenceDeleteHelper.completeDeleteMessageCommand(req); > } > > /** >Index: src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/Message5ItemSemanticEditPolicy.java >=================================================================== >--- src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/Message5ItemSemanticEditPolicy.java (revision 7212) >+++ src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/Message5ItemSemanticEditPolicy.java (working copy) >@@ -13,13 +13,9 @@ > *****************************************************************************/ > package org.eclipse.papyrus.uml.diagram.sequence.edit.policies; > >-import org.eclipse.emf.ecore.EObject; > import org.eclipse.gef.commands.Command; > import org.eclipse.gef.commands.CompoundCommand; >-import org.eclipse.gef.commands.UnexecutableCommand; >-import org.eclipse.gmf.runtime.common.core.command.ICommand; > import org.eclipse.gmf.runtime.diagram.core.commands.DeleteCommand; >-import org.eclipse.gmf.runtime.diagram.ui.commands.ICommandProxy; > import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.CreateRelationshipRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.DestroyElementRequest; >@@ -27,8 +23,6 @@ > import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientReferenceRelationshipRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientRelationshipRequest; > import org.eclipse.gmf.runtime.notation.View; >-import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils; >-import org.eclipse.papyrus.infra.services.edit.service.IElementEditService; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.CommentAnnotatedElementCreateCommand; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.CommentAnnotatedElementReorientCommand; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.ConstraintConstrainedElementCreateCommand; >@@ -90,20 +84,10 @@ > } > > /** >- * @generated >+ * @generated NOT > */ > protected Command getDestroyElementCommand(DestroyElementRequest req) { >- EObject selectedEObject = req.getElementToDestroy(); >- IElementEditService provider = ElementEditServiceUtils.getCommandProvider(selectedEObject); >- if(provider != null) { >- // Retrieve delete command from the Element Edit service >- ICommand deleteCommand = provider.getEditCommand(req); >- >- if(deleteCommand != null) { >- return new ICommandProxy(deleteCommand); >- } >- } >- return UnexecutableCommand.INSTANCE; >+ return SequenceDeleteHelper.completeDeleteMessageCommand(req); > } > > /** >Index: src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/Message7ItemSemanticEditPolicy.java >=================================================================== >--- src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/Message7ItemSemanticEditPolicy.java (revision 7212) >+++ src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/Message7ItemSemanticEditPolicy.java (working copy) >@@ -13,13 +13,9 @@ > *****************************************************************************/ > package org.eclipse.papyrus.uml.diagram.sequence.edit.policies; > >-import org.eclipse.emf.ecore.EObject; > import org.eclipse.gef.commands.Command; > import org.eclipse.gef.commands.CompoundCommand; >-import org.eclipse.gef.commands.UnexecutableCommand; >-import org.eclipse.gmf.runtime.common.core.command.ICommand; > import org.eclipse.gmf.runtime.diagram.core.commands.DeleteCommand; >-import org.eclipse.gmf.runtime.diagram.ui.commands.ICommandProxy; > import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.CreateRelationshipRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.DestroyElementRequest; >@@ -27,8 +23,6 @@ > import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientReferenceRelationshipRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientRelationshipRequest; > import org.eclipse.gmf.runtime.notation.View; >-import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils; >-import org.eclipse.papyrus.infra.services.edit.service.IElementEditService; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.CommentAnnotatedElementCreateCommand; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.CommentAnnotatedElementReorientCommand; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.ConstraintConstrainedElementCreateCommand; >@@ -90,20 +84,10 @@ > } > > /** >- * @generated >+ * @generated NOT > */ > protected Command getDestroyElementCommand(DestroyElementRequest req) { >- EObject selectedEObject = req.getElementToDestroy(); >- IElementEditService provider = ElementEditServiceUtils.getCommandProvider(selectedEObject); >- if(provider != null) { >- // Retrieve delete command from the Element Edit service >- ICommand deleteCommand = provider.getEditCommand(req); >- >- if(deleteCommand != null) { >- return new ICommandProxy(deleteCommand); >- } >- } >- return UnexecutableCommand.INSTANCE; >+ return SequenceDeleteHelper.completeDeleteMessageCommand(req); > } > > /** >Index: src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/Message2ItemSemanticEditPolicy.java >=================================================================== >--- src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/Message2ItemSemanticEditPolicy.java (revision 7212) >+++ src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/Message2ItemSemanticEditPolicy.java (working copy) >@@ -13,13 +13,9 @@ > *****************************************************************************/ > package org.eclipse.papyrus.uml.diagram.sequence.edit.policies; > >-import org.eclipse.emf.ecore.EObject; > import org.eclipse.gef.commands.Command; > import org.eclipse.gef.commands.CompoundCommand; >-import org.eclipse.gef.commands.UnexecutableCommand; >-import org.eclipse.gmf.runtime.common.core.command.ICommand; > import org.eclipse.gmf.runtime.diagram.core.commands.DeleteCommand; >-import org.eclipse.gmf.runtime.diagram.ui.commands.ICommandProxy; > import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.CreateRelationshipRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.DestroyElementRequest; >@@ -27,8 +23,6 @@ > import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientReferenceRelationshipRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientRelationshipRequest; > import org.eclipse.gmf.runtime.notation.View; >-import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils; >-import org.eclipse.papyrus.infra.services.edit.service.IElementEditService; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.CommentAnnotatedElementCreateCommand; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.CommentAnnotatedElementReorientCommand; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.ConstraintConstrainedElementCreateCommand; >@@ -92,20 +86,10 @@ > /** > * the added code to delete the messageoccurencespecification when the message is deleted > * >- * @generated >+ * @generated NOT > */ > protected Command getDestroyElementCommand(DestroyElementRequest req) { >- EObject selectedEObject = req.getElementToDestroy(); >- IElementEditService provider = ElementEditServiceUtils.getCommandProvider(selectedEObject); >- if(provider != null) { >- // Retrieve delete command from the Element Edit service >- ICommand deleteCommand = provider.getEditCommand(req); >- >- if(deleteCommand != null) { >- return new ICommandProxy(deleteCommand); >- } >- } >- return UnexecutableCommand.INSTANCE; >+ return SequenceDeleteHelper.completeDeleteMessageCommand(req); > } > > /** >Index: src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/Message3ItemSemanticEditPolicy.java >=================================================================== >--- src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/Message3ItemSemanticEditPolicy.java (revision 7212) >+++ src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/Message3ItemSemanticEditPolicy.java (working copy) >@@ -13,13 +13,9 @@ > *****************************************************************************/ > package org.eclipse.papyrus.uml.diagram.sequence.edit.policies; > >-import org.eclipse.emf.ecore.EObject; > import org.eclipse.gef.commands.Command; > import org.eclipse.gef.commands.CompoundCommand; >-import org.eclipse.gef.commands.UnexecutableCommand; >-import org.eclipse.gmf.runtime.common.core.command.ICommand; > import org.eclipse.gmf.runtime.diagram.core.commands.DeleteCommand; >-import org.eclipse.gmf.runtime.diagram.ui.commands.ICommandProxy; > import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.CreateRelationshipRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.DestroyElementRequest; >@@ -27,8 +23,6 @@ > import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientReferenceRelationshipRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientRelationshipRequest; > import org.eclipse.gmf.runtime.notation.View; >-import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils; >-import org.eclipse.papyrus.infra.services.edit.service.IElementEditService; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.CommentAnnotatedElementCreateCommand; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.CommentAnnotatedElementReorientCommand; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.ConstraintConstrainedElementCreateCommand; >@@ -90,20 +84,10 @@ > } > > /** >- * @generated >+ * @generated NOT > */ > protected Command getDestroyElementCommand(DestroyElementRequest req) { >- EObject selectedEObject = req.getElementToDestroy(); >- IElementEditService provider = ElementEditServiceUtils.getCommandProvider(selectedEObject); >- if(provider != null) { >- // Retrieve delete command from the Element Edit service >- ICommand deleteCommand = provider.getEditCommand(req); >- >- if(deleteCommand != null) { >- return new ICommandProxy(deleteCommand); >- } >- } >- return UnexecutableCommand.INSTANCE; >+ return SequenceDeleteHelper.completeDeleteMessageCommand(req); > } > > /** >Index: src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/Message4ItemSemanticEditPolicy.java >=================================================================== >--- src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/Message4ItemSemanticEditPolicy.java (revision 7212) >+++ src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/Message4ItemSemanticEditPolicy.java (working copy) >@@ -13,13 +13,9 @@ > *****************************************************************************/ > package org.eclipse.papyrus.uml.diagram.sequence.edit.policies; > >-import org.eclipse.emf.ecore.EObject; > import org.eclipse.gef.commands.Command; > import org.eclipse.gef.commands.CompoundCommand; >-import org.eclipse.gef.commands.UnexecutableCommand; >-import org.eclipse.gmf.runtime.common.core.command.ICommand; > import org.eclipse.gmf.runtime.diagram.core.commands.DeleteCommand; >-import org.eclipse.gmf.runtime.diagram.ui.commands.ICommandProxy; > import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.CreateRelationshipRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.DestroyElementRequest; >@@ -27,8 +23,6 @@ > import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientReferenceRelationshipRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientRelationshipRequest; > import org.eclipse.gmf.runtime.notation.View; >-import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils; >-import org.eclipse.papyrus.infra.services.edit.service.IElementEditService; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.CommentAnnotatedElementCreateCommand; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.CommentAnnotatedElementReorientCommand; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.ConstraintConstrainedElementCreateCommand; >@@ -90,20 +84,10 @@ > } > > /** >- * @generated >+ * @generated NOT > */ > protected Command getDestroyElementCommand(DestroyElementRequest req) { >- EObject selectedEObject = req.getElementToDestroy(); >- IElementEditService provider = ElementEditServiceUtils.getCommandProvider(selectedEObject); >- if(provider != null) { >- // Retrieve delete command from the Element Edit service >- ICommand deleteCommand = provider.getEditCommand(req); >- >- if(deleteCommand != null) { >- return new ICommandProxy(deleteCommand); >- } >- } >- return UnexecutableCommand.INSTANCE; >+ return SequenceDeleteHelper.completeDeleteMessageCommand(req); > } > > /** >Index: src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/Message6ItemSemanticEditPolicy.java >=================================================================== >--- src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/Message6ItemSemanticEditPolicy.java (revision 7212) >+++ src/org/eclipse/papyrus/uml/diagram/sequence/edit/policies/Message6ItemSemanticEditPolicy.java (working copy) >@@ -13,13 +13,9 @@ > *****************************************************************************/ > package org.eclipse.papyrus.uml.diagram.sequence.edit.policies; > >-import org.eclipse.emf.ecore.EObject; > import org.eclipse.gef.commands.Command; > import org.eclipse.gef.commands.CompoundCommand; >-import org.eclipse.gef.commands.UnexecutableCommand; >-import org.eclipse.gmf.runtime.common.core.command.ICommand; > import org.eclipse.gmf.runtime.diagram.core.commands.DeleteCommand; >-import org.eclipse.gmf.runtime.diagram.ui.commands.ICommandProxy; > import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.CreateRelationshipRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.DestroyElementRequest; >@@ -27,8 +23,6 @@ > import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientReferenceRelationshipRequest; > import org.eclipse.gmf.runtime.emf.type.core.requests.ReorientRelationshipRequest; > import org.eclipse.gmf.runtime.notation.View; >-import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils; >-import org.eclipse.papyrus.infra.services.edit.service.IElementEditService; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.CommentAnnotatedElementCreateCommand; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.CommentAnnotatedElementReorientCommand; > import org.eclipse.papyrus.uml.diagram.sequence.edit.commands.ConstraintConstrainedElementCreateCommand; >@@ -90,20 +84,10 @@ > } > > /** >- * @generated >+ * @generated NOT > */ > protected Command getDestroyElementCommand(DestroyElementRequest req) { >- EObject selectedEObject = req.getElementToDestroy(); >- IElementEditService provider = ElementEditServiceUtils.getCommandProvider(selectedEObject); >- if(provider != null) { >- // Retrieve delete command from the Element Edit service >- ICommand deleteCommand = provider.getEditCommand(req); >- >- if(deleteCommand != null) { >- return new ICommandProxy(deleteCommand); >- } >- } >- return UnexecutableCommand.INSTANCE; >+ return SequenceDeleteHelper.completeDeleteMessageCommand(req); > } > > /**
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 364828
: 211275