com.intellij.openapi.diagnostic
Class ErrorReportSubmitter

java.lang.Object
  extended by com.intellij.openapi.diagnostic.ErrorReportSubmitter
All Implemented Interfaces:
PluginAware

public abstract class ErrorReportSubmitter
extends java.lang.Object
implements PluginAware

This class should be extended by plugin vendor and provided by means of ExtensionPoints.ERROR_HANDLER if reporting errors that happened in plugin code to vendor is desirable.


Constructor Summary
ErrorReportSubmitter()
           
 
Method Summary
 PluginDescriptor getPluginDescriptor()
           
abstract  java.lang.String getReportActionText()
           
 void setPluginDescriptor(PluginDescriptor plugin)
          Called by the framework.
abstract  SubmittedReportInfo submit(IdeaLoggingEvent[] events, java.awt.Component parentComponent)
          This method is called whenever fatal error (aka exception) in plugin code had happened and user decided to report this problem to plugin vendor.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ErrorReportSubmitter

public ErrorReportSubmitter()
Method Detail

setPluginDescriptor

public void setPluginDescriptor(PluginDescriptor plugin)
Called by the framework. Allows to identify the plugin that provided this extension.

Specified by:
setPluginDescriptor in interface PluginAware
Parameters:
plugin -

getPluginDescriptor

public PluginDescriptor getPluginDescriptor()
Returns:
plugin that provided this particular extension

getReportActionText

public abstract java.lang.String getReportActionText()
Returns:
"Report to vendor" action text to be used in Error Reporter user interface. For example: "Report to JetBrains".

submit

public abstract SubmittedReportInfo submit(IdeaLoggingEvent[] events,
                                           java.awt.Component parentComponent)
This method is called whenever fatal error (aka exception) in plugin code had happened and user decided to report this problem to plugin vendor.

Parameters:
events - sequence of the fatal error descriptors. Fatal errors that happened immediately one after another most probably caused by first one that happened so it's a common practice to submit only first one. Array passed is guaranteed to have at least one element.
parentComponent - one usually wants to show up a dialog asking user for additional details and probably authentication info. parentComponent parameter is passed so dialog that would come up would be properly aligned with its parent dialog (IDE Fatal Errors).
Returns:
submission result status.