This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 42255 - Review of Code Folding API
Summary: Review of Code Folding API
Status: RESOLVED FIXED
Alias: None
Product: editor
Classification: Unclassified
Component: -- Other -- (show other bugs)
Version: 4.x
Hardware: All All
: P3 blocker (vote)
Assignee: issues@editor
URL:
Keywords: API_REVIEW
Depends on: 45544 45545 45547 45548 45549
Blocks:
  Show dependency tree
 
Reported: 2004-04-21 12:05 UTC by Miloslav Metelka
Modified: 2007-11-05 13:44 UTC (History)
1 user (show)

See Also:
Issue Type: TASK
Exception Reporter:


Attachments
Generated architecture answers arch-code-folding.html document (44.45 KB, text/html)
2004-04-21 16:30 UTC, Miloslav Metelka
Details
Modified ARCH document (48.38 KB, text/html)
2004-06-16 13:56 UTC, Miloslav Metelka
Details
Code Folding JavaDocs (127.87 KB, application/octet-stream)
2004-06-16 14:00 UTC, Miloslav Metelka
Details
Updated javadocs (126.78 KB, application/octet-stream)
2004-06-17 14:06 UTC, Miloslav Metelka
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Miloslav Metelka 2004-04-21 12:05:13 UTC
I would like to ask for review of the Code Folding
API/SPI.

The cvs/editor/arch/arch-code-folding.html
document can be generated by going to
cvs/editor/arch/ in the main trunk and running "ant".

The Javadocs can be generated by going to
cvs/editor/ in the main trunk and running "ant
javadoc".
Comment 1 Miloslav Metelka 2004-04-21 16:30:22 UTC
Created attachment 14506 [details]
Generated architecture answers arch-code-folding.html document
Comment 2 Miloslav Metelka 2004-04-21 16:41:30 UTC
I've attached generated cvs/editor/arch/arch-code-folding.html to this
issue.
I've added zipped javadocs as EditorAPI.zip at
http://editor.netbeans.org/servlets/ProjectDownloadList
Comment 3 Jesse Glick 2004-04-24 03:08:33 UTC
Quick comments (I did not have time to review the API in detail):

I am curious why you have an interface Fold but then say that all
instances must be of type AbstractFold. Why not just delete the
interface and rename AbstractFold to Fold? (If you cannot safely
permit other implementations.) Or clearly separate the API from SPI so
there is not an instanceof relationship (may make future API changes
easier)?

Suggest that the code folding API/SPI be an independent submodule. As
a rule, it can be dangerous for an API-providing module (here, editor)
to have any GUI or globally installed objects (e.g.: a layer,
installed services, nontrivial actions performed on restore). It means
that modules which provide some impl of the SPI (e.g.) force the whole
editor feature set to be loaded, and effectively prevents alternative
implementations of the editor from being created. (Splitting apart the
editor module into several pieces would be a good idea in any case; it
is far too big IMHO and covers a lot of functionality, like Java
syntax support, that ought to be separable.)

I assume the package names such as org.netbeans.editor.fold.api are
temporary until the API is approved and stabilized?

FoldType.getName could be .getDisplayName to clarify that it is a
human-displayable string.

FoldUtilities.findRecursive claims that the result is modifiable. What
specifically happens when you modify it? (And for the modifiable list
return values, I assume you need to be holding the hierarchy lock?)

FoldHierarchySpi.Provider would better be a top-level interface rather
than nested.

FoldMaintainerFactory says "It is intended for xml layer-based
registration as well.". Does this mean it should be in default lookup?
If so, please just say that, as META-INF/services is perhaps a better
choice. If not, please link to details about where it is registered
(as FoldMaintainerFactoryProvider seems to indicate).

FoldHierarchySpi has some undocumented methods.

FoldHierarchyTransaction.commit should presumably throw
IllegalStateException if it was already committed.

It would be very nice if there were a demo module that showed the
major use cases of the SPI, since this is a fairly large and possibly
intimidating API/SPI that few people would grasp the usage of quickly.
Take a look at the example modules in
openide/api/examples/windowsystem2/ for a good example.
Comment 4 Miloslav Metelka 2004-04-26 16:06:34 UTC
> Suggest that the code folding API/SPI be an independent submodule.
> As a rule, it can be dangerous for an API-providing module
> (here, editor) to have any GUI or globally installed objects
> (e.g.: a layer, installed services, nontrivial actions performed
> on restore). It means that modules which provide some impl
> of the SPI (e.g.) force the whole editor feature set to be loaded,
> and effectively prevents alternative implementations of the editor 
> from being created.

I'm generally open to make the CF a submodule. Currently it's a part
of the editor because
 a) I do not see particularly useful to force the other existing
editor implementations (emacs or vim bridges) to provide access to
their folds through our API as the structure, use and maintaining is
IMHO rather specific to each editor type.
 b) The collected usecases for the CF API come only from the editor
module itself (or generally from the editor module extensions) not
from other (non-editing related) modules. 

> (Splitting apart the editor module into several 
> pieces would be a good idea in any case; it is far too big IMHO and
> covers a lot of functionality, like Java syntax support, that ought
> to be separable.)

We plan to split the editor according to the functionality specific to
the particular mime-types. We will separate plain, html and java
editors out from the generic editor infrastructure in a similar way
like it was done in the prj40_prototype branch.

> I am curious why you have an interface Fold but then say that all
> instances must be of type AbstractFold. Why not just delete the
> interface and rename AbstractFold to Fold?

The Fold interface defines the contract for the API clients. I've
chosen the interface as it's well readable and the API clients are
typically not interested in the implementation at all.
 It seemed better to me than to have all or part of the AbstractFold
functionality present in the Fold. I could also make the Fold class
final and use delegation on the spi level but it would lead to greater
complexity and likely a creation of an extra object for each fold on
the spi level so finally I've chosen the current solution.
 There were other reasons as well - e.g. the fact that filtering over
the fold instances (anything like FilterFold) is IMO not very useful
so there should be no major need for extra Fold interface implementations.
 Anyway this case (declaring interface on the api level and state
restrictions on its implementors explicitly) was seen several times on
devrev and we might want to discuss it again and make some final
conclusions.

> I assume the package names such as org.netbeans.editor.fold.api are
> temporary until the API is approved and stabilized?

Yes we want the API to be official in the longterm but I've needed to
package the API early when the the original policy was in use. If I
pass through the review we plan to repackage it.

> FoldType.getName could be .getDisplayName to clarify that it is a
> human-displayable string.

Well it's more programmer-displayable than human-displayable ;)

> FoldUtilities.findRecursive claims that the result is modifiable.

Modifying the returned list has no effect on the fold hierarchy. The
hierarchy lock needs to be held for the consistency of the finding
operation as well as for the subsequent operation
(collapsing/expanding). I will update the javadocs to state that.

> FoldHierarchySpi.Provider would better be a top-level interface 
> rather than nested.

I have made it inner class to stress that no API or SPI clients should
be dealing with it in any way. It is just internal friend bridge
between api and spi packages.

> FoldMaintainerFactory says "It is intended for xml layer-based
> registration as well.". Does this mean it should be in default lookup?
> If so, please just say that, as META-INF/services is perhaps a better
> choice. If not, please link to details about where it is registered
> (as FoldMaintainerFactoryProvider seems to indicate).

I need the particular set of fold maintainer factoies to be specific
for a particular mime-type. Therefore I've made
FoldMaintainerFactoryProvider (registered in META-INF/services) which
provides a list of FoldMaintainerFactory instances for the given
mime-type (taken from the text component).
The FoldMaintainerFactory instances are registered in
Editors/<mime-type>/FoldMaintainer.
I now see that I've forget to link the FoldMaintainerFactory with the
FoldMaintainerFactoryProvider so it's hard to find out the relation.

> FoldHierarchySpi has some undocumented methods.

I'll fix that.

> FoldHierarchyTransaction.commit should presumably throw
> IllegalStateException if it was already committed.

It does. I'll update the javadoc to state that.

> It would be very nice if there were a demo module that showed the
> major use cases of the SPI, since this is a fairly large and possibly
> intimidating API/SPI that few people would grasp the usage of quickly.
> Take a look at the example modules in
> openide/api/examples/windowsystem2/ for a good example.

There are currently 7 API usescases in the arch document.
There are also two FoldMaintainer implementations
(NbJavaFoldMainatiner and CustomFoldMaintainer) that the users could
clone but they may be too difficult for an initial experience so I'll
try to come up with something simpler.

Jesse, thanks for the review.

Comment 5 Jesse Glick 2004-04-26 20:16:18 UTC
Re. Fold vs. AbstractFold - I don't see a problem with that decision,
it just seemed arbitrary (I could find no explanation for why it is
done that way).

Re. FoldHierarchySpi.Provider - if it is not supposed to be seen by
either API or SPI users, why is it even here? Put it in some
org.netbeans.modules.** package.
Comment 6 Tomas Pavek 2004-06-14 11:02:14 UTC
The final review will be held on June 17th. The reviewers will be
Tomas Pavek, Jaroslav Tulach and Pavel Buzek.

There is a preliminary opinion document at:
http://openide.netbeans.org/tutorial/reviews/opinions_42255.html


Comment 7 Miloslav Metelka 2004-06-14 12:06:12 UTC
I apologize, I'm still working on the final changes. I hope that I
will finish all of them during today.
Comment 8 Miloslav Metelka 2004-06-16 13:51:41 UTC
The issue should now be ready for review.

I've created a submodule cvs/editor/fold in the fold_api branch (over
editor and nbbuild) where the CF API, SPI and infrastructure
implementation is located. This way the CF will be usable for any
swing-based editor (for any JTextComponent).

The API and SPI are packaged into official packages.

I have not managed to work on the tests yet. I know that I need to
write those before the possible commit. Personally I would appreciate
if the API could be DevRev-ed prior to writing of the tests because in
case of major changes there will be less code to refactor.

I have decided that I will only support one implementation of the fold
and I've moved that one into api package it's public final class Fold.

I have updated the arch document - I have added three major SPI
usecases - registering of the fold manager, adding and removing of the
folds.

The fold module needs to read fold managers registrations from xml
layer from Editors/<mime-type>/FoldManager folder so I've declared the
module to depend on Filesystems and Loaders APIs. The code using those
APIs is temporarily removed but it will finally be there.
 The fold module is projectized but I had problems with building the
module just declaring the above dependencies so I've temporarily set
dependency on org.openide. I'll fix that.

I continue working on fixing and improving of the javadocs.
Comment 9 Miloslav Metelka 2004-06-16 13:56:02 UTC
Created attachment 15758 [details]
Modified ARCH document
Comment 10 Miloslav Metelka 2004-06-16 14:00:15 UTC
Created attachment 15759 [details]
Code Folding JavaDocs
Comment 11 Miloslav Metelka 2004-06-17 14:05:25 UTC
I have fixed mainly the following javadocs:
Fold - removed red note about implementing of the interface - it's no
longer interface.
FoldHierarchy - removed note about folds for views versus models -
moved into FoldManager.
FoldType - removed extra final equals() and hashCode() (now whole
class is final)
FoldManager - improved docs
FoldManagerFactory - corrected layer folder specification; added
sorting information
FoldUtilities - fixed some wrong parameter names

Attaching the updated javadocs
Comment 12 Miloslav Metelka 2004-06-17 14:06:04 UTC
Created attachment 15809 [details]
Updated javadocs
Comment 13 Tomas Pavek 2004-06-25 10:11:36 UTC
Opinion document from the API review available at:
http://openide.netbeans.org/tutorial/reviews/opinions_42255.html
Comment 14 Miloslav Metelka 2004-06-29 13:51:14 UTC
I have resolved all TCRs and TCAs and integrated the code into trunk:

Checking in editor/build.xml;
/cvs/editor/build.xml,v  <--  build.xml
new revision: 1.53; previous revision: 1.52
done
Processing log script arguments...
More commits to come...
Checking in editor/fold/.cvsignore;
/cvs/editor/fold/.cvsignore,v  <--  .cvsignore
new revision: 1.2; previous revision: 1.1
done
Checking in editor/fold/build.xml;
/cvs/editor/fold/build.xml,v  <--  build.xml
new revision: 1.2; previous revision: 1.1
done
Checking in editor/fold/manifest.mf;
/cvs/editor/fold/manifest.mf,v  <--  manifest.mf
new revision: 1.2; previous revision: 1.1
done
cvs diff: .cvsignore is a new entry, no comparison available
cvs diff: build.xml is a new entry, no comparison available
cvs diff: manifest.mf is a new entry, no comparison available
Processing log script arguments...
More commits to come...
Checking in editor/fold/arch/.cvsignore;
/cvs/editor/fold/arch/.cvsignore,v  <--  .cvsignore
new revision: 1.2; previous revision: 1.1
done
Checking in editor/fold/arch/arch-editor-fold.xml;
/cvs/editor/fold/arch/arch-editor-fold.xml,v  <--  arch-editor-fold.xml
new revision: 1.2; previous revision: 1.1
done
Checking in editor/fold/arch/build.xml;
/cvs/editor/fold/arch/build.xml,v  <--  build.xml
new revision: 1.2; previous revision: 1.1
done
cvs diff: .cvsignore is a new entry, no comparison available
cvs diff: arch-editor-fold.xml is a new entry, no comparison available
cvs diff: build.xml is a new entry, no comparison available
Processing log script arguments...
More commits to come...
Checking in editor/fold/nbproject/project.properties;
/cvs/editor/fold/nbproject/project.properties,v  <--  project.properties
new revision: 1.2; previous revision: 1.1
done
Checking in editor/fold/nbproject/project.xml;
/cvs/editor/fold/nbproject/project.xml,v  <--  project.xml
new revision: 1.2; previous revision: 1.1
done
cvs diff: project.properties is a new entry, no comparison available
cvs diff: project.xml is a new entry, no comparison available
Processing log script arguments...
More commits to come...
Checking in editor/fold/src/org/netbeans/api/editor/fold/Fold.java;
/cvs/editor/fold/src/org/netbeans/api/editor/fold/Fold.java,v  <-- 
Fold.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/src/org/netbeans/api/editor/fold/FoldHierarchy.java;
/cvs/editor/fold/src/org/netbeans/api/editor/fold/FoldHierarchy.java,v
 <--  FoldHierarchy.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/src/org/netbeans/api/editor/fold/FoldHierarchyEvent.java;
/cvs/editor/fold/src/org/netbeans/api/editor/fold/FoldHierarchyEvent.java,v
 <--  FoldHierarchyEvent.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/src/org/netbeans/api/editor/fold/FoldHierarchyListener.java;
/cvs/editor/fold/src/org/netbeans/api/editor/fold/FoldHierarchyListener.java,v
 <--  FoldHierarchyListener.javanew revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/src/org/netbeans/api/editor/fold/FoldStateChange.java;
/cvs/editor/fold/src/org/netbeans/api/editor/fold/FoldStateChange.java,v
 <--  FoldStateChange.java
new revision: 1.2; previous revision: 1.1
done
Checking in editor/fold/src/org/netbeans/api/editor/fold/FoldType.java;
/cvs/editor/fold/src/org/netbeans/api/editor/fold/FoldType.java,v  <--
 FoldType.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/src/org/netbeans/api/editor/fold/FoldUtilities.java;
/cvs/editor/fold/src/org/netbeans/api/editor/fold/FoldUtilities.java,v
 <--  FoldUtilities.java
new revision: 1.2; previous revision: 1.1
done
cvs diff: Fold.java is a new entry, no comparison available
cvs diff: FoldHierarchy.java is a new entry, no comparison available
cvs diff: FoldHierarchyEvent.java is a new entry, no comparison available
cvs diff: FoldHierarchyListener.java is a new entry, no comparison
available
cvs diff: FoldStateChange.java is a new entry, no comparison available
cvs diff: FoldType.java is a new entry, no comparison available
cvs diff: FoldUtilities.java is a new entry, no comparison available
Processing log script arguments...
More commits to come...
Checking in
editor/fold/src/org/netbeans/modules/editor/fold/ApiPackageAccessor.java;
/cvs/editor/fold/src/org/netbeans/modules/editor/fold/ApiPackageAccessor.java,v
 <--  ApiPackageAccessor.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/src/org/netbeans/modules/editor/fold/Bundle.properties;
/cvs/editor/fold/src/org/netbeans/modules/editor/fold/Bundle.properties,v
 <--  Bundle.properties
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/src/org/netbeans/modules/editor/fold/CustomProvider.java;
/cvs/editor/fold/src/org/netbeans/modules/editor/fold/CustomProvider.java,v
 <--  CustomProvider.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/src/org/netbeans/modules/editor/fold/FoldChildren.java;
/cvs/editor/fold/src/org/netbeans/modules/editor/fold/FoldChildren.java,v
 <--  FoldChildren.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/src/org/netbeans/modules/editor/fold/FoldHierarchyExecution.java;
/cvs/editor/fold/src/org/netbeans/modules/editor/fold/FoldHierarchyExecution.java,v
 <--  FoldHierarchyExecution.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/src/org/netbeans/modules/editor/fold/FoldHierarchyTransactionImpl.java;
/cvs/editor/fold/src/org/netbeans/modules/editor/fold/FoldHierarchyTransactionImpl.java,v
 <--  FoldHierarchyTransactionImpl.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/src/org/netbeans/modules/editor/fold/FoldManagerFactoryProvider.java;
/cvs/editor/fold/src/org/netbeans/modules/editor/fold/FoldManagerFactoryProvider.java,v
 <--  FoldManagerFactoryProvider.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/src/org/netbeans/modules/editor/fold/FoldOperationImpl.java;
/cvs/editor/fold/src/org/netbeans/modules/editor/fold/FoldOperationImpl.java,v
 <--  FoldOperationImpl.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/src/org/netbeans/modules/editor/fold/FoldUtilitiesImpl.java;
/cvs/editor/fold/src/org/netbeans/modules/editor/fold/FoldUtilitiesImpl.java,v
 <--  FoldUtilitiesImpl.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/src/org/netbeans/modules/editor/fold/LayerProvider.java;
/cvs/editor/fold/src/org/netbeans/modules/editor/fold/LayerProvider.java,v
 <--  LayerProvider.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/src/org/netbeans/modules/editor/fold/SpiPackageAccessor.java;
/cvs/editor/fold/src/org/netbeans/modules/editor/fold/SpiPackageAccessor.java,v
 <--  SpiPackageAccessor.java
new revision: 1.2; previous revision: 1.1
done
cvs diff: ApiPackageAccessor.java is a new entry, no comparison available
cvs diff: Bundle.properties is a new entry, no comparison available
cvs diff: CustomProvider.java is a new entry, no comparison available
cvs diff: FoldChildren.java is a new entry, no comparison available
cvs diff: FoldHierarchyExecution.java is a new entry, no comparison
available
cvs diff: FoldHierarchyTransactionImpl.java is a new entry, no
comparison available
cvs diff: FoldManagerFactoryProvider.java is a new entry, no
comparison available
cvs diff: FoldOperationImpl.java is a new entry, no comparison available
cvs diff: FoldUtilitiesImpl.java is a new entry, no comparison available
cvs diff: LayerProvider.java is a new entry, no comparison available
cvs diff: SpiPackageAccessor.java is a new entry, no comparison available
Processing log script arguments...
More commits to come...
Checking in
editor/fold/src/org/netbeans/spi/editor/fold/FoldHierarchyTransaction.java;
/cvs/editor/fold/src/org/netbeans/spi/editor/fold/FoldHierarchyTransaction.java,v
 <--  FoldHierarchyTransaction.java
new revision: 1.2; previous revision: 1.1
done
Checking in editor/fold/src/org/netbeans/spi/editor/fold/FoldManager.java;
/cvs/editor/fold/src/org/netbeans/spi/editor/fold/FoldManager.java,v 
<--  FoldManager.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/src/org/netbeans/spi/editor/fold/FoldManagerFactory.java;
/cvs/editor/fold/src/org/netbeans/spi/editor/fold/FoldManagerFactory.java,v
 <--  FoldManagerFactory.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/src/org/netbeans/spi/editor/fold/FoldOperation.java;
/cvs/editor/fold/src/org/netbeans/spi/editor/fold/FoldOperation.java,v
 <--  FoldOperation.java
new revision: 1.2; previous revision: 1.1
done
cvs diff: FoldHierarchyTransaction.java is a new entry, no comparison
available
cvs diff: FoldManager.java is a new entry, no comparison available
cvs diff: FoldManagerFactory.java is a new entry, no comparison available
cvs diff: FoldOperation.java is a new entry, no comparison available
Processing log script arguments...
More commits to come...
RCS file: /cvs/editor/fold/test/.cvsignore,v
done
Checking in editor/fold/test/.cvsignore;
/cvs/editor/fold/test/.cvsignore,v  <--  .cvsignore
initial revision: 1.1
done
Checking in editor/fold/test/build-unit.xml;
/cvs/editor/fold/test/build-unit.xml,v  <--  build-unit.xml
new revision: 1.2; previous revision: 1.1
done
Checking in editor/fold/test/build.xml;
/cvs/editor/fold/test/build.xml,v  <--  build.xml
new revision: 1.2; previous revision: 1.1
done
Checking in editor/fold/test/cfg-unit.xml;
/cvs/editor/fold/test/cfg-unit.xml,v  <--  cfg-unit.xml
new revision: 1.2; previous revision: 1.1
done
cvs diff: build-unit.xml is a new entry, no comparison available
cvs diff: build.xml is a new entry, no comparison available
cvs diff: cfg-unit.xml is a new entry, no comparison available
Processing log script arguments...
More commits to come...
Checking in
editor/fold/test/unit/src/org/netbeans/modules/editor/fold/AbstractFoldManager.java;
/cvs/editor/fold/test/unit/src/org/netbeans/modules/editor/fold/AbstractFoldManager.java,v
 <--  AbstractFoldManager.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/test/unit/src/org/netbeans/modules/editor/fold/FoldHierarchyTestEnv.java;
/cvs/editor/fold/test/unit/src/org/netbeans/modules/editor/fold/FoldHierarchyTestEnv.java,v
 <--  FoldHierarchyTestEnv.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/test/unit/src/org/netbeans/modules/editor/fold/NestedFoldManagerTest.java;
/cvs/editor/fold/test/unit/src/org/netbeans/modules/editor/fold/NestedFoldManagerTest.java,v
 <--  NestedFoldManagerTest.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/fold/test/unit/src/org/netbeans/modules/editor/fold/SimpleFoldManagerTest.java;
/cvs/editor/fold/test/unit/src/org/netbeans/modules/editor/fold/SimpleFoldManagerTest.java,v
 <--  SimpleFoldManagerTest.java
new revision: 1.2; previous revision: 1.1
done
cvs diff: AbstractFoldManager.java is a new entry, no comparison available
cvs diff: FoldHierarchyTestEnv.java is a new entry, no comparison
available
cvs diff: NestedFoldManagerTest.java is a new entry, no comparison
available
cvs diff: SimpleFoldManagerTest.java is a new entry, no comparison
available
Processing log script arguments...
More commits to come...
Checking in editor/libsrc/org/netbeans/editor/ActionFactory.java;
/cvs/editor/libsrc/org/netbeans/editor/ActionFactory.java,v  <-- 
ActionFactory.java
new revision: 1.48; previous revision: 1.47
done
Checking in editor/libsrc/org/netbeans/editor/BaseCaret.java;
/cvs/editor/libsrc/org/netbeans/editor/BaseCaret.java,v  <-- 
BaseCaret.java
new revision: 1.100; previous revision: 1.99
done
Checking in editor/libsrc/org/netbeans/editor/BaseTextUI.java;
/cvs/editor/libsrc/org/netbeans/editor/BaseTextUI.java,v  <-- 
BaseTextUI.java
new revision: 1.70; previous revision: 1.69
done
Checking in editor/libsrc/org/netbeans/editor/CodeFoldingSideBar.java;
/cvs/editor/libsrc/org/netbeans/editor/CodeFoldingSideBar.java,v  <--
 CodeFoldingSideBar.java
new revision: 1.17; previous revision: 1.16
done
Checking in editor/libsrc/org/netbeans/editor/CollapsedView.java;
/cvs/editor/libsrc/org/netbeans/editor/CollapsedView.java,v  <-- 
CollapsedView.java
new revision: 1.9; previous revision: 1.8
done
Checking in editor/libsrc/org/netbeans/editor/CustomFoldManager.java;
/cvs/editor/libsrc/org/netbeans/editor/CustomFoldManager.java,v  <-- 
CustomFoldManager.java
new revision: 1.2; previous revision: 1.1
done
Checking in editor/libsrc/org/netbeans/editor/DrawEngineDocView.java;
/cvs/editor/libsrc/org/netbeans/editor/DrawEngineDocView.java,v  <-- 
DrawEngineDocView.java
new revision: 1.12; previous revision: 1.11
done
Checking in editor/libsrc/org/netbeans/editor/DrawEngineFakeDocView.java;
/cvs/editor/libsrc/org/netbeans/editor/DrawEngineFakeDocView.java,v 
<--  DrawEngineFakeDocView.java
new revision: 1.4; previous revision: 1.3
done
Checking in editor/libsrc/org/netbeans/editor/FoldMultiLineView.java;
/cvs/editor/libsrc/org/netbeans/editor/FoldMultiLineView.java,v  <-- 
FoldMultiLineView.java
new revision: 1.8; previous revision: 1.7
done
Checking in editor/libsrc/org/netbeans/editor/GlyphGutter.java;
/cvs/editor/libsrc/org/netbeans/editor/GlyphGutter.java,v  <-- 
GlyphGutter.java
new revision: 1.43; previous revision: 1.42
done
cvs diff: CustomFoldManager.java is a new entry, no comparison available
Processing log script arguments...
More commits to come...
Removing
editor/libsrc/org/netbeans/editor/ext/java/JavaFoldMaintainer.java;
/cvs/editor/libsrc/org/netbeans/editor/ext/java/JavaFoldMaintainer.java,v
 <--  JavaFoldMaintainer.java
new revision: delete; previous revision: 1.4
done
Checking in
editor/libsrc/org/netbeans/editor/ext/java/JavaFoldManager.java;
/cvs/editor/libsrc/org/netbeans/editor/ext/java/JavaFoldManager.java,v
 <--  JavaFoldManager.java
new revision: 1.2; previous revision: 1.1
done
cvs diff: JavaFoldManager.java is a new entry, no comparison available
Processing log script arguments...
More commits to come...
Removing editor/libsrc/org/netbeans/editor/fold/api/Fold.java;
/cvs/editor/libsrc/org/netbeans/editor/fold/api/Fold.java,v  <-- 
Fold.java
new revision: delete; previous revision: 1.4
done
Removing editor/libsrc/org/netbeans/editor/fold/api/FoldHierarchy.java;
/cvs/editor/libsrc/org/netbeans/editor/fold/api/FoldHierarchy.java,v 
<--  FoldHierarchy.java
new revision: delete; previous revision: 1.4
done
Removing
editor/libsrc/org/netbeans/editor/fold/api/FoldHierarchyEvent.java;
/cvs/editor/libsrc/org/netbeans/editor/fold/api/FoldHierarchyEvent.java,v
 <--  FoldHierarchyEvent.java
new revision: delete; previous revision: 1.4
done
Removing
editor/libsrc/org/netbeans/editor/fold/api/FoldHierarchyListener.java;
/cvs/editor/libsrc/org/netbeans/editor/fold/api/FoldHierarchyListener.java,v
 <--  FoldHierarchyListener.java
new revision: delete; previous revision: 1.3
done
Removing editor/libsrc/org/netbeans/editor/fold/api/FoldStateChange.java;
/cvs/editor/libsrc/org/netbeans/editor/fold/api/FoldStateChange.java,v
 <--  FoldStateChange.java
new revision: delete; previous revision: 1.2
done
Removing editor/libsrc/org/netbeans/editor/fold/api/FoldType.java;
/cvs/editor/libsrc/org/netbeans/editor/fold/api/FoldType.java,v  <-- 
FoldType.java
new revision: delete; previous revision: 1.4
done
Removing editor/libsrc/org/netbeans/editor/fold/api/FoldUtilities.java;
/cvs/editor/libsrc/org/netbeans/editor/fold/api/FoldUtilities.java,v 
<--  FoldUtilities.java
new revision: delete; previous revision: 1.5
done
Processing log script arguments...
More commits to come...
Removing editor/libsrc/org/netbeans/editor/fold/spi/AbstractFold.java;
/cvs/editor/libsrc/org/netbeans/editor/fold/spi/AbstractFold.java,v 
<--  AbstractFold.java
new revision: delete; previous revision: 1.6
done
Removing
editor/libsrc/org/netbeans/editor/fold/spi/DefaultFoldStateChange.java;
/cvs/editor/libsrc/org/netbeans/editor/fold/spi/DefaultFoldStateChange.java,v
 <--  DefaultFoldStateChange.javanew revision: delete; previous
revision: 1.1
done
Removing editor/libsrc/org/netbeans/editor/fold/spi/DescriptionFold.java;
/cvs/editor/libsrc/org/netbeans/editor/fold/spi/DescriptionFold.java,v
 <--  DescriptionFold.java
new revision: delete; previous revision: 1.5
done
Removing editor/libsrc/org/netbeans/editor/fold/spi/FoldHierarchySpi.java;
/cvs/editor/libsrc/org/netbeans/editor/fold/spi/FoldHierarchySpi.java,v
 <--  FoldHierarchySpi.java
new revision: delete; previous revision: 1.5
done
Removing
editor/libsrc/org/netbeans/editor/fold/spi/FoldHierarchyTransaction.java;
/cvs/editor/libsrc/org/netbeans/editor/fold/spi/FoldHierarchyTransaction.java,v
 <--  FoldHierarchyTransaction.java
new revision: delete; previous revision: 1.6
done
Removing editor/libsrc/org/netbeans/editor/fold/spi/FoldMaintainer.java;
/cvs/editor/libsrc/org/netbeans/editor/fold/spi/FoldMaintainer.java,v
 <--  FoldMaintainer.java
new revision: delete; previous revision: 1.4
done
Removing
editor/libsrc/org/netbeans/editor/fold/spi/FoldMaintainerFactory.java;
/cvs/editor/libsrc/org/netbeans/editor/fold/spi/FoldMaintainerFactory.java,v
 <--  FoldMaintainerFactory.java
new revision: delete; previous revision: 1.4
done
Removing
editor/libsrc/org/netbeans/editor/fold/spi/FoldMaintainerFactoryProvider.java;
/cvs/editor/libsrc/org/netbeans/editor/fold/spi/FoldMaintainerFactoryProvider.java,v
 <--  FoldMaintainerFactoryProvider.java
new revision: delete; previous revision: 1.2
done
Removing editor/libsrc/org/netbeans/editor/fold/spi/RootFold.java;
/cvs/editor/libsrc/org/netbeans/editor/fold/spi/RootFold.java,v  <-- 
RootFold.java
new revision: delete; previous revision: 1.4
done
Processing log script arguments...
More commits to come...
Checking in editor/libsrc/org/netbeans/editor/view/spi/LockView.java;
/cvs/editor/libsrc/org/netbeans/editor/view/spi/LockView.java,v  <-- 
LockView.java
new revision: 1.6; previous revision: 1.5
done
Processing log script arguments...
More commits to come...
Removing
editor/libsrc/org/netbeans/lib/editor/fold/CustomFoldMaintainer.java;
/cvs/editor/libsrc/org/netbeans/lib/editor/fold/CustomFoldMaintainer.java,v
 <--  CustomFoldMaintainer.java
new revision: delete; previous revision: 1.3
done
Removing editor/libsrc/org/netbeans/lib/editor/fold/FoldChildren.java;
/cvs/editor/libsrc/org/netbeans/lib/editor/fold/FoldChildren.java,v 
<--  FoldChildren.java
new revision: delete; previous revision: 1.3
done
Removing
editor/libsrc/org/netbeans/lib/editor/fold/FoldUtilitiesImpl.java;
/cvs/editor/libsrc/org/netbeans/lib/editor/fold/FoldUtilitiesImpl.java,v
 <--  FoldUtilitiesImpl.java
new revision: delete; previous revision: 1.6
done
Processing log script arguments...
More commits to come...
Checking in editor/nbproject/project.xml;
/cvs/editor/nbproject/project.xml,v  <--  project.xml
new revision: 1.6; previous revision: 1.5
done
Processing log script arguments...
More commits to come...
Removing
editor/src/META-INF/services/org.netbeans.editor.fold.spi.FoldMaintainerFactoryProvider;
/cvs/editor/src/META-INF/services/org.netbeans.editor.fold.spi.FoldMaintainerFactoryProvider,v
 <--  org.netbeans.editor.fold.spi.FoldMaintainerFactoryProvider
new revision: delete; previous revision: 1.2
done
Processing log script arguments...
More commits to come...
Removing
editor/src/org/netbeans/modules/editor/NbFoldMaintainerFactoryProvider.java;
/cvs/editor/src/org/netbeans/modules/editor/NbFoldMaintainerFactoryProvider.java,v
 <--  NbFoldMaintainerFactoryProvider.java
new revision: delete; previous revision: 1.1
done
Processing log script arguments...
More commits to come...
Checking in editor/src/org/netbeans/modules/editor/java/JavaKit.java;
/cvs/editor/src/org/netbeans/modules/editor/java/JavaKit.java,v  <-- 
JavaKit.java
new revision: 1.89; previous revision: 1.88
done
Checking in
editor/src/org/netbeans/modules/editor/java/NbJavaCodeFoldingSideBar.java;
/cvs/editor/src/org/netbeans/modules/editor/java/NbJavaCodeFoldingSideBar.java,v
 <--  NbJavaCodeFoldingSideBar.java
new revision: 1.4; previous revision: 1.3
done
Removing
editor/src/org/netbeans/modules/editor/java/NbJavaFoldMaintainer.java;
/cvs/editor/src/org/netbeans/modules/editor/java/NbJavaFoldMaintainer.java,v
 <--  NbJavaFoldMaintainer.java
new revision: delete; previous revision: 1.27
done
Checking in
editor/src/org/netbeans/modules/editor/java/NbJavaFoldManager.java;
/cvs/editor/src/org/netbeans/modules/editor/java/NbJavaFoldManager.java,v
 <--  NbJavaFoldManager.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/src/org/netbeans/modules/editor/java/NbJavaSyntaxSupport.java;
/cvs/editor/src/org/netbeans/modules/editor/java/NbJavaSyntaxSupport.java,v
 <--  NbJavaSyntaxSupport.java
new revision: 1.54; previous revision: 1.53
done
cvs diff: NbJavaFoldManager.java is a new entry, no comparison available
Processing log script arguments...
More commits to come...
Checking in editor/src/org/netbeans/modules/editor/resources/layer.xml;
/cvs/editor/src/org/netbeans/modules/editor/resources/layer.xml,v  <--
 layer.xml
new revision: 1.55; previous revision: 1.54
done
Processing log script arguments...
More commits to come...
Checking in editor/util/build.xml;
/cvs/editor/util/build.xml,v  <--  build.xml
new revision: 1.2; previous revision: 1.1
done
Checking in editor/util/manifest.mf;
/cvs/editor/util/manifest.mf,v  <--  manifest.mf
new revision: 1.2; previous revision: 1.1
done
cvs diff: build.xml is a new entry, no comparison available
cvs diff: manifest.mf is a new entry, no comparison available
Processing log script arguments...
More commits to come...
Checking in editor/util/nbproject/project.properties;
/cvs/editor/util/nbproject/project.properties,v  <--  project.properties
new revision: 1.2; previous revision: 1.1
done
Checking in editor/util/nbproject/project.xml;
/cvs/editor/util/nbproject/project.xml,v  <--  project.xml
new revision: 1.2; previous revision: 1.1
done
cvs diff: project.properties is a new entry, no comparison available
cvs diff: project.xml is a new entry, no comparison available
Processing log script arguments...
More commits to come...
Checking in
editor/util/src/org/netbeans/modules/editor/util/Bundle.properties;
/cvs/editor/util/src/org/netbeans/modules/editor/util/Bundle.properties,v
 <--  Bundle.properties
new revision: 1.2; previous revision: 1.1
done
Checking in editor/util/src/org/netbeans/modules/editor/util/GapList.java;
/cvs/editor/util/src/org/netbeans/modules/editor/util/GapList.java,v 
<--  GapList.java
new revision: 1.2; previous revision: 1.1
done
Checking in
editor/util/src/org/netbeans/modules/editor/util/PriorityMutex.java;
/cvs/editor/util/src/org/netbeans/modules/editor/util/PriorityMutex.java,v
 <--  PriorityMutex.java
new revision: 1.2; previous revision: 1.1
done
cvs diff: Bundle.properties is a new entry, no comparison available
cvs diff: GapList.java is a new entry, no comparison available
cvs diff: PriorityMutex.java is a new entry, no comparison available
Processing log script arguments...
More commits to come...
RCS file: /cvs/editor/util/test/.cvsignore,v
done
Checking in editor/util/test/.cvsignore;
/cvs/editor/util/test/.cvsignore,v  <--  .cvsignore
initial revision: 1.1
done
Checking in editor/util/test/build-unit.xml;
/cvs/editor/util/test/build-unit.xml,v  <--  build-unit.xml
new revision: 1.2; previous revision: 1.1
done
Checking in editor/util/test/build.xml;
/cvs/editor/util/test/build.xml,v  <--  build.xml
new revision: 1.2; previous revision: 1.1
done
Checking in editor/util/test/cfg-unit.xml;
/cvs/editor/util/test/cfg-unit.xml,v  <--  cfg-unit.xml
new revision: 1.2; previous revision: 1.1
done
cvs diff: build-unit.xml is a new entry, no comparison available
cvs diff: build.xml is a new entry, no comparison available
cvs diff: cfg-unit.xml is a new entry, no comparison available
Processing log script arguments...
More commits to come...
Checking in
editor/util/test/unit/src/org/netbeans/modules/editor/util/GapListRandomTest.java;
/cvs/editor/util/test/unit/src/org/netbeans/modules/editor/util/GapListRandomTest.java,v
 <--  GapListRandomTest.java
new revision: 1.2; previous revision: 1.1
done
cvs diff: GapListRandomTest.java is a new entry, no comparison available
Processing log script arguments...
More commits to come...
Checking in nbbuild/build.properties;
/cvs/nbbuild/build.properties,v  <--  build.properties
new revision: 1.194; previous revision: 1.193
done
Checking in nbbuild/build.xml;
/cvs/nbbuild/build.xml,v  <--  build.xml
new revision: 1.521; previous revision: 1.520
done
Checking in nbbuild/cluster.properties;
/cvs/nbbuild/cluster.properties,v  <--  cluster.properties
new revision: 1.49; previous revision: 1.48
done
Processing log script arguments...
More commits to come...
Checking in nbbuild/templates/modules.xml;
/cvs/nbbuild/templates/modules.xml,v  <--  modules.xml
new revision: 1.38; previous revision: 1.37
done