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 71060

Summary: Wizard for AU update center
Product: apisupport Reporter: Jesse Glick <jglick>
Component: TemplatesAssignee: Jiri Rechtacek <jrechtacek>
Status: VERIFIED FIXED    
Severity: blocker CC: jrojcek
Priority: P3 Keywords: UI
Version: 5.x   
Hardware: All   
OS: All   
Issue Type: ENHANCEMENT Exception Reporter:
Attachments: proposed UI spec.
2md draft of UI spec.
screen shot of Declaration Panel

Description Jesse Glick 2006-01-05 22:02:36 UTC
Would be nice to have a wizard to create a custom update center and add it to
some module. See the ide/updatecenters module for sample content. Would be
useful in conjunction with issue #64426.
Comment 1 Jiri Rechtacek 2006-01-19 07:50:58 UTC
Created attachment 28455 [details]
proposed UI spec.
Comment 2 Jesse Glick 2006-01-19 15:24:11 UTC
I tried to reply to your UI spec on dev@apisupport a few days ago but it seems
the message never arrived. So again:

I don't think this should be a New Project wizard. It should be available from
the New File wizard, under the NetBeans Module Development category. There is no
particular reason to force a user to make a new module just to hold an update
center, nor to prevent a user from adding more than one update center to a
single module.

All the user really needs to select is

- choice of module to add to (taken care of by general first panel of wizard
already)

- URL

- some simple name for the update center, to be used for creating filenames in
module sources; no need to prompt for package, I think, since will just put
layer files in same folder as XML layer anyway

Should look like a regular module file wizard, with a Created/Modified files etc.

BTW the "Check Connectivity" button is a nice touch, but the spec does not say
what exactly it does.

Warning conditions - could also check that the referenced XML file in fact has a
DOCTYPE which matches one of the "-//NetBeans//DTD Autoupdate Catalog x.y//EN"
DTDs. Optional.
Comment 3 Jiri Rechtacek 2006-01-19 15:53:30 UTC
> I don't think this should be a New Project wizard. It should be available from
> the New File wizard, under the NetBeans Module Development category. There is 

Ok, sounds reasonable. I has been thinking in a 'new module' following line, as
update centers module is. Your way may be more efficient to users.

> All the user really needs to select is
> 
> - choice of module to add to (taken care of by general first panel of wizard
> already)
> 
> - URL
> 
> - some simple name for the update center, to be used for creating filenames in
> module sources; no need to prompt for package, I think, since will just put
> layer files in same folder as XML layer anyway

Right, exactly.

> BTW the "Check Connectivity" button is a nice touch, but the spec does not say
> what exactly it does.

I thought about try to create URL connection to the given URL, but not forced it
to allow to users work offline.

> Warning conditions - could also check that the referenced XML file in fact has a
> DOCTYPE which matches one of the "-//NetBeans//DTD Autoupdate Catalog x.y//EN"
> DTDs. Optional.

Yes, optionally. Show warning if the URL is accessible but its content doesn't
pass the schema.

I'm going to attach new UI spec.
Thanks for review.
Comment 4 Jesse Glick 2006-01-19 16:18:54 UTC
"I thought about try to create URL connection to the given URL, but not forced it
to allow to users work offline." - that's fine, just pointing out that the spec
doesn't say what will happen when you press the button. Does a progress bar
appear? Does something appear in the dialog? Is Next disabled if the URL cannot
be connected to, or just a warning?
Comment 5 Jesse Glick 2006-01-19 16:19:41 UTC
Just remembered that an UC probably needs a display name as it will appear in
the AU wizard, in addition to a "code" name used for the layer file.
Comment 6 Jiri Rechtacek 2006-01-23 19:58:49 UTC
Created attachment 28559 [details]
2md draft of UI spec.
Comment 7 Jesse Glick 2006-01-23 20:31:08 UTC
Icon - why is it needed?? No icons appear in the AU wizard. Delete that, I think.

"I_D_ of Update Center in XML layer" - too verbose. Maybe just "Code Name" would
suffice (and should probably be above "Display Name"?). Look at other apisupport
wizards for comparison. Also I would suggest a shorter default value such as
"module-code-name-base", or no default value at all.

"Check Connectivity" should be directly beneath (or to the right of) "URL to
Update Descriptor".

Jano, feel free to add any comments if you have them.
Comment 8 Jiri Rechtacek 2006-01-24 22:06:37 UTC
Created attachment 28582 [details]
screen shot of Declaration Panel
Comment 9 Jiri Rechtacek 2006-01-24 22:26:38 UTC
Icon? The icon can be visible only in Advanced Option - maybe useless. I'm going
to remove for declaration.
Url_key? Wizard will generate a generic 'url_key' value, not set be user.
Check connectivity? Not included in my prototype, only it's can check if the
target XML exists and is available. Unluckily the validation fails on official
Update Centers, the wizard shouldn't force this validation.
Other possible Warning conditions:
- the URL doesn't ends with ".xml"
- text of URL field cannot recognized as URL object

Thought:
- what if path in the layer file already exists? Make new one? Disable continue?
Ignore this case?

I'm going to integrate the prototype tomorrow in trunk, some bugfixes will
needs. Is it Ok?
Comment 10 Jiri Rechtacek 2006-01-24 22:50:10 UTC
Uff. I should read twice before submit. Some typos are fixed.

------- Additional comments from jrechtacek Tue Jan 24 22:26:38 +0000 2006
Icon? The icon can be visible only in Advanced Option - maybe useless. I'm going
to remove from UC declaration.
Url_key? Wizard will generate a generic 'url_key' value, not set by user.
Check connectivity? Not included in my prototype, only what the wizard can check
is the target XML exists and is available, not validate. Unluckily the XML
validation fails on also on official Update Centers, the wizard shouldn't force
this validation. The Check connectivity button looks ugly for me, needs more UI
tunning.

Other possible Warning conditions:
- the URL doesn't end with ".xml"
- text of URL field cannot be recognized as URL object

Thought:
- what if the path in the layer file already exists? Make new one with another
file name? Or disable continue in wizard? Or simple ignore this case?

I'm going to integrate the prototype tomorrow in trunk, but some bugfixes will
needs. Is it Ok?
Comment 11 Jesse Glick 2006-01-24 23:06:59 UTC
Sure, will be easier to comment on UI when we can play with it.
Comment 12 Jiri Rechtacek 2006-01-25 15:40:58 UTC
Initially version was integrated in trunk.
Missing:
- remove Update Center icon
- add Check connectivity button (if passes into UI)
- support to add more Update Centers into same module

===============
Directory
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter
added to the repository
Directory
/shared/data/ccvs/repository/apisupport/project/test/unit/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter
added to the repository
cvs server: scheduling file
`src/org/netbeans/modules/apisupport/project/ui/resources/newUpdateCenter.html'
for addition
cvs server: scheduling file
`src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/Bundle.properties'
for addition
cvs server: scheduling file
`src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/DataModel.java'
for addition
cvs server: scheduling file
`src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/update_center.xml'
for addition
cvs server: scheduling file
`test/unit/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/DataModelTest.java'
for addition
cvs server: scheduling file
`src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/UpdateCenterRegistrationPanel.java'
for addition
cvs server: scheduling file
`src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/UpdateCenterRegistrationPanel.form'
for addition
cvs server: scheduling file
`src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/NewUpdateCenterIterator.java'
for addition
cvs server: scheduling file
`src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/Bundle_UpdateCenter_template.properties'
for addition
cvs server: use 'cvs commit' to add these files permanently
cvs server: scheduling file `newUpdateCenter.gif' for addition
cvs server: use 'cvs commit' to add this file permanently
RCS file:
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/Bundle_UpdateCenter_template.properties,v
done
Checking in
src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/Bundle_UpdateCenter_template.properties;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/Bundle_UpdateCenter_template.properties,v
 <--  Bundle_UpdateCenter_template.properties
initial revision: 1.1
done
RCS file:
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/NewUpdateCenterIterator.java,v
done
Checking in
src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/NewUpdateCenterIterator.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/NewUpdateCenterIterator.java,v
 <--  NewUpdateCenterIterator.java
initial revision: 1.1
done
RCS file:
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/UpdateCenterRegistrationPanel.form,v
done
Checking in
src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/UpdateCenterRegistrationPanel.form;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/UpdateCenterRegistrationPanel.form,v
 <--  UpdateCenterRegistrationPanel.form
initial revision: 1.1
done
RCS file:
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/UpdateCenterRegistrationPanel.java,v
done
Checking in
src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/UpdateCenterRegistrationPanel.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/UpdateCenterRegistrationPanel.java,v
 <--  UpdateCenterRegistrationPanel.java
initial revision: 1.1
done
RCS file:
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/update_center.xml,v
done
Checking in
src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/update_center.xml;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/update_center.xml,v
 <--  update_center.xml
initial revision: 1.1
done
RCS file:
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/Bundle.properties,v
done
Checking in
src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/Bundle.properties;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/Bundle.properties,v
 <--  Bundle.properties
initial revision: 1.1
done
RCS file:
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/DataModel.java,v
done
Checking in
src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/DataModel.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/DataModel.java,v
 <--  DataModel.java
initial revision: 1.1
done
RCS file:
/shared/data/ccvs/repository/apisupport/project/test/unit/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/DataModelTest.java,v
done
Checking in
test/unit/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/DataModelTest.java;
/shared/data/ccvs/repository/apisupport/project/test/unit/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/DataModelTest.java,v
 <--  DataModelTest.java
initial revision: 1.1
done
RCS file:
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/resources/newUpdateCenter.gif,v
done
Checking in
src/org/netbeans/modules/apisupport/project/ui/resources/newUpdateCenter.gif;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/resources/newUpdateCenter.gif,v
 <--  newUpdateCenter.gif
initial revision: 1.1
done
Checking in src/org/netbeans/modules/apisupport/project/ui/resources/layer.xml;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/resources/layer.xml,v
 <--  layer.xml
new revision: 1.38; previous revision: 1.37
done
RCS file:
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/resources/newUpdateCenter.html,v
done
Checking in
src/org/netbeans/modules/apisupport/project/ui/resources/newUpdateCenter.html;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/resources/newUpdateCenter.html,v
 <--  newUpdateCenter.html
initial revision: 1.1
done
Comment 13 Jiri Rechtacek 2006-01-30 15:31:14 UTC
Removed the Update Center icon.

Checking in
apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/DataModel.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/DataModel.java,v
 <--  DataModel.java
new revision: 1.2; previous revision: 1.1
done
Checking in
apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/UpdateCenterRegistrationPanel.form;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/UpdateCenterRegistrationPanel.form,v
 <--  UpdateCenterRegistrationPanel.form
new revision: 1.2; previous revision: 1.1
done
Checking in
apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/UpdateCenterRegistrationPanel.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/UpdateCenterRegistrationPanel.java,v
 <--  UpdateCenterRegistrationPanel.java
new revision: 1.3; previous revision: 1.2
done
Comment 14 Jiri Rechtacek 2006-01-30 15:35:00 UTC
Allowed to create more Update Centers to same module. Covering was test modified
also.

Checking in
apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/DataModel.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/DataModel.java,v
 <--  DataModel.java
new revision: 1.3; previous revision: 1.2
done
Checking in
apisupport/project/test/unit/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/DataModelTest.java;
/shared/data/ccvs/repository/apisupport/project/test/unit/src/org/netbeans/modules/apisupport/project/ui/wizard/updatecenter/DataModelTest.java,v
 <--  DataModelTest.java
new revision: 1.2; previous revision: 1.1
done
Comment 15 Jesse Glick 2006-02-01 19:11:17 UTC
I updated the main UI spec to mention this wizard.
Comment 16 Tomas Danek 2006-02-07 12:29:12 UTC
v.