From 8d840cfbb613afc4ec47febcf9dd3ba3a8db4a30 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=9C=B0=E5=B9=B3=E7=BA=BF?= <22250530@qq.com> Date: Thu, 13 Aug 2015 15:20:07 +0800 Subject: [PATCH] --- src/com/wentch/redkale/util/AnyValue.java | 60 +++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/src/com/wentch/redkale/util/AnyValue.java b/src/com/wentch/redkale/util/AnyValue.java index 8bc9795a6..2a89fb37a 100644 --- a/src/com/wentch/redkale/util/AnyValue.java +++ b/src/com/wentch/redkale/util/AnyValue.java @@ -54,6 +54,66 @@ public interface AnyValue { return rs; } + public void addAll(final AnyValue av) { + if (av == null) return; + if (av instanceof DefaultAnyValue) { + final DefaultAnyValue adv = (DefaultAnyValue) av; + if (adv.stringValues != null) { + for (Entry en : adv.stringValues) { + this.addValue(en.name, en.value); + } + } + if (adv.entityValues != null) { + for (Entry en : adv.entityValues) { + this.addValue(en.name, en.value); + } + } + } else { + final Entry[] strings = av.getStringEntrys(); + if (strings != null) { + for (Entry en : strings) { + this.addValue(en.name, en.value); + } + } + final Entry[] anys = av.getAnyEntrys(); + if (anys != null) { + for (Entry en : anys) { + this.addValue(en.name, en.value); + } + } + } + } + + public void setAll(final AnyValue av) { + if (av == null) return; + if (av instanceof DefaultAnyValue) { + final DefaultAnyValue adv = (DefaultAnyValue) av; + if (adv.stringValues != null) { + for (Entry en : adv.stringValues) { + this.setValue(en.name, en.value); + } + } + if (adv.entityValues != null) { + for (Entry en : adv.entityValues) { + this.setValue(en.name, en.value); + } + } + } else { + final Entry[] strings = av.getStringEntrys(); + if (strings != null) { + for (Entry en : strings) { + this.setValue(en.name, en.value); + } + } + final Entry[] anys = av.getAnyEntrys(); + if (anys != null) { + for (Entry en : anys) { + this.setValue(en.name, en.value); + } + } + } + } + @Override public Entry[] getStringEntrys() { return stringValues;