Author: hibou
Date: Sun May 11 20:38:12 2014
New Revision: 1593855
URL: http://svn.apache.org/r1593855
Log:
Make getExtraInfos and getExtraInfo work on the same data, with the explicit
bias on getting the data out on the deprecated mathod
Modified:
ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java
ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/ModuleDescriptor.java
ant/ivy/core/trunk/src/java/org/apache/ivy/core/report/ResolveReport.java
ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java
ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParser.java
Modified:
ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java
URL:
http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java?rev=1593855&r1=1593854&r2=1593855&view=diff
==============================================================================
---
ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java
(original)
+++
ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/DefaultModuleDescriptor.java
Sun May 11 20:38:12 2014
@@ -194,7 +194,6 @@ public class DefaultModuleDescriptor imp
nmd.description = md.getDescription();
nmd.lastModified = md.getLastModified();
nmd.extraAttributesNamespaces = md.getExtraAttributesNamespaces();
- nmd.extraInfo = md.getExtraInfo();
nmd.extraInfos = md.getExtraInfos();
nmd.namespace = ns;
@@ -256,8 +255,6 @@ public class DefaultModuleDescriptor imp
private Map/* <String,String> */extraAttributesNamespaces = new
LinkedHashMap();
- private Map/* <String,String> */extraInfo = new HashMap();
-
private List<ExtraInfoHolder> extraInfos = new
ArrayList<ExtraInfoHolder>();
public DefaultModuleDescriptor(ModuleRevisionId id, String status, Date
pubDate) {
@@ -839,12 +836,23 @@ public class DefaultModuleDescriptor imp
@Deprecated
public void addExtraInfo(String infoKey, String value) {
- extraInfo.put(infoKey, value);
+ extraInfos.add(new ExtraInfoHolder(infoKey, value));
}
@Deprecated
- public Map getExtraInfo() {
- return extraInfo;
+ public Map<String, String> getExtraInfo() {
+ Map<String, String> map = new HashMap<String, String>();
+ for (ExtraInfoHolder extraInfo : extraInfos) {
+ populateExtraInfoMap(map, extraInfo);
+ }
+ return map;
+ }
+
+ private void populateExtraInfoMap(Map<String, String> map, ExtraInfoHolder
extraInfo) {
+ map.put(extraInfo.getName(), extraInfo.getContent());
+ for (ExtraInfoHolder nested : extraInfo.getNestedExtraInfoHolder()) {
+ populateExtraInfoMap(map, nested);
+ }
}
public List<ExtraInfoHolder> getExtraInfos() {
Modified:
ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/ModuleDescriptor.java
URL:
http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/ModuleDescriptor.java?rev=1593855&r1=1593854&r2=1593855&view=diff
==============================================================================
---
ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/ModuleDescriptor.java
(original)
+++
ant/ivy/core/trunk/src/java/org/apache/ivy/core/module/descriptor/ModuleDescriptor.java
Sun May 11 20:38:12 2014
@@ -254,22 +254,23 @@ public interface ModuleDescriptor extend
* @return the list of xml namespaces used by extra attributes, as Map
from prefix to namespace
* URIs.
*/
- Map/* <String,String> */getExtraAttributesNamespaces();
+ Map<String, String> getExtraAttributesNamespaces();
/**
* Returns the custom info provided in the info tag. All the tags except
the description are
- * given. The key is the name of the tag, the value is its content.
+ * given. The key is the name of the tag, the value is its content. <br />
*
- * @deprecated please use getExtraInfos() method instead
- * @return
+ * @deprecated this method is not returning the full content of the extra
info: to get the full
+ * structure of the extra infos, use getExtraInfos()
*/
@Deprecated
- Map/* <String,String> */getExtraInfo();
+ Map<String, String> getExtraInfo();
/**
* Returns a list of extras infos (tag name, attributes and content). All
the tags except the
* description are given.
*
+ * @since 2.4.0
* @return
*/
List<ExtraInfoHolder> getExtraInfos();
@@ -277,6 +278,7 @@ public interface ModuleDescriptor extend
/**
* Returns content from first extrainfo matching with given tag name
*
+ * @since 2.4.0
* @return
*/
String getExtraInfoContentByTagName(String tagName);
@@ -284,6 +286,7 @@ public interface ModuleDescriptor extend
/**
* Returns first extrainfo matching with given tag name
*
+ * @since 2.4.0
* @return
*/
ExtraInfoHolder getExtraInfoByTagName(String tagName);
Modified:
ant/ivy/core/trunk/src/java/org/apache/ivy/core/report/ResolveReport.java
URL:
http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/core/report/ResolveReport.java?rev=1593855&r1=1593854&r2=1593855&view=diff
==============================================================================
--- ant/ivy/core/trunk/src/java/org/apache/ivy/core/report/ResolveReport.java
(original)
+++ ant/ivy/core/trunk/src/java/org/apache/ivy/core/report/ResolveReport.java
Sun May 11 20:38:12 2014
@@ -371,6 +371,7 @@ public class ResolveReport {
public ModuleDescriptor toFixedModuleDescriptor(IvySettings settings,
List<ModuleId> midToKeep) {
DefaultModuleDescriptor fixedmd = new
DefaultModuleDescriptor(md.getModuleRevisionId(),
md.getStatus(), new Date());
+ fixedmd.getExtraInfos().addAll(md.getExtraInfos());
// copy configurations
List<String> resolvedConfs = Arrays.asList(getConfigurations());
Modified:
ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java
URL:
http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java?rev=1593855&r1=1593854&r2=1593855&view=diff
==============================================================================
--- ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java
(original)
+++ ant/ivy/core/trunk/src/java/org/apache/ivy/osgi/core/BundleInfoAdapter.java
Sun May 11 20:38:12 2014
@@ -168,7 +168,8 @@ public class BundleInfoAdapter {
if (manifest != null) {
for (Entry<Object, Object> entries :
manifest.getMainAttributes().entrySet()) {
- md.addExtraInfo(entries.getKey().toString(),
entries.getValue().toString());
+ md.addExtraInfo(new
ExtraInfoHolder(entries.getKey().toString(), entries.getValue()
+ .toString()));
}
}
Modified:
ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParser.java
URL:
http://svn.apache.org/viewvc/ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParser.java?rev=1593855&r1=1593854&r2=1593855&view=diff
==============================================================================
---
ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParser.java
(original)
+++
ant/ivy/core/trunk/src/java/org/apache/ivy/plugins/parser/xml/XmlModuleDescriptorParser.java
Sun May 11 20:38:12 2014
@@ -562,7 +562,6 @@ public class XmlModuleDescriptorParser e
descriptor.setNamespace(parentNamespace);
}
- descriptor.getExtraInfo().putAll(parent.getExtraInfo());
descriptor.getExtraInfos().addAll(parent.getExtraInfos());
}
@@ -1251,7 +1250,6 @@ public class XmlModuleDescriptorParser e
} else if (state == State.EXTRA_INFO) {
String content = buffer == null ? "" : buffer.toString();
buffer = null;
- getMd().addExtraInfo(qName, content);
ExtraInfoHolder extraInfo = extraInfoStack.pop();
extraInfo.setContent(content);
if (extraInfoStack.isEmpty()) {