Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 211639 - Clean up ErrorParserManager API
Summary: Clean up ErrorParserManager API
Status: RESOLVED DUPLICATE of bug 203727
Alias: None
Product: CDT
Classification: Tools
Component: cdt-core (show other bugs)
Version: 5.0   Edit
Hardware: PC Windows XP
: P3 enhancement (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-11-30 15:37 EST by Jason Montojo CLA
Modified: 2007-12-11 09:53 EST (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jason Montojo CLA 2007-11-30 15:37:22 EST
ErrorParserManager exposes strange API because it extends OutputStream.  This was probably done to enable sharing of information between the stream part of the class and the manager part.  This can lead to a number of weird programmer errors.  For example, calling ErrorParserManager.close() interferes with the reference counting for ErrorParserManager.getOutputStream().  close() is actually part of the OutputStream API and shouldn't be called on an ErrorParserManager instance.  But close() is exposed (along with write() and everything on OutputStream).

I'm proposing to separate the OutputStream functionality into a separate class, whether top-level or internal.

This will break existing IErrorParsers which use ErrorParserManager in an undesirable way.  This is probably a good thing.  Nonetheless, it's still a breaking API change.

Any objections?
Comment 1 Jason Montojo CLA 2007-12-11 09:53:33 EST
This isn't technically a duplicate of bug 203727 but the patch that's been posted for it address all the issues I've raised for this bug.
	



*** This bug has been marked as a duplicate of bug 203727 ***