You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by mc...@apache.org on 2013/01/15 19:08:21 UTC
svn commit: r1433558 - in /felix/trunk/bundleplugin/src/main/java/aQute:
bnd/osgi/Clazz.java lib/deployer/FileRepo.java lib/getopt/CommandLine.java
Author: mcculls
Date: Tue Jan 15 18:08:21 2013
New Revision: 1433558
URL: http://svn.apache.org/viewvc?rev=1433558&view=rev
Log:
More bndlib fixes
Modified:
felix/trunk/bundleplugin/src/main/java/aQute/bnd/osgi/Clazz.java
felix/trunk/bundleplugin/src/main/java/aQute/lib/deployer/FileRepo.java
felix/trunk/bundleplugin/src/main/java/aQute/lib/getopt/CommandLine.java
Modified: felix/trunk/bundleplugin/src/main/java/aQute/bnd/osgi/Clazz.java
URL: http://svn.apache.org/viewvc/felix/trunk/bundleplugin/src/main/java/aQute/bnd/osgi/Clazz.java?rev=1433558&r1=1433557&r2=1433558&view=diff
==============================================================================
--- felix/trunk/bundleplugin/src/main/java/aQute/bnd/osgi/Clazz.java (original)
+++ felix/trunk/bundleplugin/src/main/java/aQute/bnd/osgi/Clazz.java Tue Jan 15 18:08:21 2013
@@ -861,6 +861,8 @@ public class Clazz {
doSignature(in, member, access_flags);
else if ("ConstantValue".equals(attributeName))
doConstantValue(in);
+ else if ("AnnotationDefault".equals(attributeName))
+ doElementValue(in, member, RetentionPolicy.RUNTIME, cd!=null, access_flags);
else if ("Exceptions".equals(attributeName))
doExceptions(in, access_flags);
else {
Modified: felix/trunk/bundleplugin/src/main/java/aQute/lib/deployer/FileRepo.java
URL: http://svn.apache.org/viewvc/felix/trunk/bundleplugin/src/main/java/aQute/lib/deployer/FileRepo.java?rev=1433558&r1=1433557&r2=1433558&view=diff
==============================================================================
--- felix/trunk/bundleplugin/src/main/java/aQute/lib/deployer/FileRepo.java (original)
+++ felix/trunk/bundleplugin/src/main/java/aQute/lib/deployer/FileRepo.java Tue Jan 15 18:08:21 2013
@@ -179,6 +179,9 @@ public class FileRepo implements Plugin,
*/
static final PutOptions DEFAULTOPTIONS = new PutOptions();
+ public static final int MAX_MAJOR = 999999999;
+
+
String shell;
String path;
String init;
@@ -195,7 +198,7 @@ public class FileRepo implements Plugin,
protected File root;
Registry registry;
boolean canWrite = true;
- Pattern REPO_FILE = Pattern.compile("([-a-zA-z0-9_\\.]+)-([0-9\\.]+)\\.(jar|lib)");
+ Pattern REPO_FILE = Pattern.compile("([-a-zA-z0-9_\\.]+)-([0-9\\.]+|latest)\\.(jar|lib)");
Reporter reporter;
boolean dirty;
String name;
@@ -444,6 +447,7 @@ public class FileRepo implements Plugin,
public SortedSet<Version> versions(String bsn) throws Exception {
init();
+ boolean haslatest = false;
File dir = new File(root, bsn);
if (dir.isDirectory()) {
String versions[] = dir.list();
@@ -453,10 +457,13 @@ public class FileRepo implements Plugin,
if (m.matches()) {
String version = m.group(2);
if (version.equals("latest"))
- version = Integer.MAX_VALUE + "";
- list.add(new Version(version));
+ haslatest = true;
+ else
+ list.add(new Version(version));
}
}
+ if ( list.isEmpty() && haslatest)
+ list.add( new Version(MAX_MAJOR,0,0));
return new SortedList<Version>(list);
}
return SortedList.empty();
@@ -603,6 +610,12 @@ public class FileRepo implements Plugin,
protected File getLocal(String bsn, Version version, Map<String,String> properties) {
File dir = new File(root, bsn);
+ if ( version.getMajor() == MAX_MAJOR && version.getMinor()== 0 && version.getMicro() == 0 && version.getQualifier() == null) {
+ File fjar = new File(dir, bsn + "-latest.jar");
+ if (fjar.isFile())
+ return fjar.getAbsoluteFile();
+ }
+
File fjar = new File(dir, bsn + "-" + version.getWithoutQualifier() + ".jar");
if (fjar.isFile())
return fjar.getAbsoluteFile();
Modified: felix/trunk/bundleplugin/src/main/java/aQute/lib/getopt/CommandLine.java
URL: http://svn.apache.org/viewvc/felix/trunk/bundleplugin/src/main/java/aQute/lib/getopt/CommandLine.java?rev=1433558&r1=1433557&r2=1433558&view=diff
==============================================================================
--- felix/trunk/bundleplugin/src/main/java/aQute/lib/getopt/CommandLine.java (original)
+++ felix/trunk/bundleplugin/src/main/java/aQute/lib/getopt/CommandLine.java Tue Jan 15 18:08:21 2013
@@ -24,7 +24,7 @@ public class CommandLine {
static int LINELENGTH = 60;
static Pattern ASSIGNMENT = Pattern.compile("(\\w[\\w\\d]*+)\\s*=\\s*([^\\s]+)\\s*");
Reporter reporter;
- Justif justif = new Justif(60);
+ Justif justif = new Justif(80,30,32,70);
CommandLineMessages msg;
public CommandLine(Reporter reporter) {
@@ -309,15 +309,19 @@ public class CommandLine {
* Provide a help text.
*/
- public void help(Formatter f, @SuppressWarnings("unused") Object target, String cmd, Class< ? extends Options> specification) {
+ public void help(Formatter f, @SuppressWarnings("unused")
+ Object target, String cmd, Class< ? extends Options> specification) {
Description descr = specification.getAnnotation(Description.class);
Arguments patterns = specification.getAnnotation(Arguments.class);
Map<String,Method> options = getOptions(specification);
String description = descr == null ? "" : descr.value();
- f.format("NAME%n %s - %s%n%n", cmd, description);
- f.format("SYNOPSIS%n %s [options] ", cmd);
+ f.format("%nNAME%n %s \t0- \t1%s%n%n", cmd, description);
+ if (options.isEmpty())
+ f.format("SYNOPSIS%n %s ", cmd);
+ else
+ f.format("SYNOPSIS%n %s [options] ", cmd);
if (patterns == null)
f.format(" ...%n%n");
@@ -330,28 +334,30 @@ public class CommandLine {
f.format("%s<%s>", del, pattern);
del = " ";
}
- f.format("%n%n");
+ f.format("%n");
}
- f.format("OPTIONS%n");
- for (Entry<String,Method> entry : options.entrySet()) {
- String optionName = entry.getKey();
- Method m = entry.getValue();
+ if (!options.isEmpty()) {
+ f.format("%nOPTIONS%n%n");
+ for (Entry<String,Method> entry : options.entrySet()) {
+ String optionName = entry.getKey();
+ Method m = entry.getValue();
- Config cfg = m.getAnnotation(Config.class);
- Description d = m.getAnnotation(Description.class);
- boolean required = isMandatory(m);
+ Config cfg = m.getAnnotation(Config.class);
+ Description d = m.getAnnotation(Description.class);
+ boolean required = isMandatory(m);
- String methodDescription = cfg != null ? cfg.description() : (d == null ? "" : d.value());
+ String methodDescription = cfg != null ? cfg.description() : (d == null ? "" : d.value());
- f.format(" %s -%s, --%s %s%s - %s%n", required ? " " : "[", //
- optionName.charAt(0), //
- optionName, //
- getTypeDescriptor(m.getGenericReturnType()), //
- required ? " " : "]",//
- methodDescription);
+ f.format(" %s -%s, --%s %s%s \t0- \t1%s%n", required ? " " : "[", //
+ optionName.charAt(0), //
+ optionName, //
+ getTypeDescriptor(m.getGenericReturnType()), //
+ required ? " " : "]",//
+ methodDescription);
+ }
+ f.format("%n");
}
- f.format("%n");
}
static Pattern LAST_PART = Pattern.compile(".*[\\$\\.]([^\\$\\.]+)");