diff --git a/cluster/router/condition_router.go b/cluster/router/condition_router.go index 3797782e962c40d75a5a6b99054e133aece5d0bb..3a7f836befeb11712cbd5320e3bab12f9ca7474f 100644 --- a/cluster/router/condition_router.go +++ b/cluster/router/condition_router.go @@ -18,6 +18,7 @@ package router import ( + "github.com/apache/dubbo-go/gostd/container" "reflect" "regexp" "strings" @@ -151,7 +152,7 @@ func parseRule(rule string) (map[string]MatchPair, error) { return condition, nil } var pair MatchPair - values := utils.NewSet() + values := container.NewSet() reg := regexp.MustCompile(`([&!=,]*)\s*([^&!=,\s]+)`) var startIndex = 0 if indexTuple := reg.FindIndex([]byte(rule)); len(indexTuple) > 0 { @@ -164,8 +165,8 @@ func parseRule(rule string) (map[string]MatchPair, error) { switch separator { case "": pair = MatchPair{ - Matches: utils.NewSet(), - Mismatches: utils.NewSet(), + Matches: container.NewSet(), + Mismatches: container.NewSet(), } condition[content] = pair case "&": @@ -173,8 +174,8 @@ func parseRule(rule string) (map[string]MatchPair, error) { pair = r } else { pair = MatchPair{ - Matches: utils.NewSet(), - Mismatches: utils.NewSet(), + Matches: container.NewSet(), + Mismatches: container.NewSet(), } condition[content] = pair } @@ -258,8 +259,8 @@ func If(b bool, t, f interface{}) interface{} { } type MatchPair struct { - Matches *utils.HashSet - Mismatches *utils.HashSet + Matches *container.HashSet + Mismatches *container.HashSet } func (pair MatchPair) isMatch(value string, param *common.URL) bool { diff --git a/common/utils/hashset.go b/gostd/container/hashset.go similarity index 99% rename from common/utils/hashset.go rename to gostd/container/hashset.go index 46bb571ace0477a304d16311e6112d10b9cd0441..4be5a7ff1d2944361d3307e06157e1e81df1d8d6 100644 --- a/common/utils/hashset.go +++ b/gostd/container/hashset.go @@ -15,7 +15,7 @@ * limitations under the License. */ -package utils +package container import ( "fmt" diff --git a/common/utils/hashset_test.go b/gostd/container/hashset_test.go similarity index 78% rename from common/utils/hashset_test.go rename to gostd/container/hashset_test.go index 68f0258c1b8baec27b0dd40aaa0b06339500f6fa..8ecac6980dbddb83b647c6a57e7215cef2eef7ea 100644 --- a/common/utils/hashset_test.go +++ b/gostd/container/hashset_test.go @@ -14,77 +14,77 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package utils +package container import "testing" func TestSetNew(t *testing.T) { set := NewSet(2, 1) - if actualValue := set.Size(); actualValue != 2 { + if actualValue := Size(); actualValue != 2 { t.Errorf("Got %v expected %v", actualValue, 2) } - if actualValue := set.Contains(1); actualValue != true { + if actualValue := Contains(1); actualValue != true { t.Errorf("Got %v expected %v", actualValue, true) } - if actualValue := set.Contains(2); actualValue != true { + if actualValue := Contains(2); actualValue != true { t.Errorf("Got %v expected %v", actualValue, true) } - if actualValue := set.Contains(3); actualValue != false { + if actualValue := Contains(3); actualValue != false { t.Errorf("Got %v expected %v", actualValue, true) } } func TestSetAdd(t *testing.T) { set := NewSet() - set.Add() - set.Add(1) - set.Add(2) - set.Add(2, 3) - set.Add() - if actualValue := set.Empty(); actualValue != false { + Add() + Add(1) + Add(2) + Add(2, 3) + Add() + if actualValue := Empty(); actualValue != false { t.Errorf("Got %v expected %v", actualValue, false) } - if actualValue := set.Size(); actualValue != 3 { + if actualValue := Size(); actualValue != 3 { t.Errorf("Got %v expected %v", actualValue, 3) } } func TestSetContains(t *testing.T) { set := NewSet() - set.Add(3, 1, 2) - set.Add(2, 3) - set.Add() - if actualValue := set.Contains(); actualValue != true { + Add(3, 1, 2) + Add(2, 3) + Add() + if actualValue := Contains(); actualValue != true { t.Errorf("Got %v expected %v", actualValue, true) } - if actualValue := set.Contains(1); actualValue != true { + if actualValue := Contains(1); actualValue != true { t.Errorf("Got %v expected %v", actualValue, true) } - if actualValue := set.Contains(1, 2, 3); actualValue != true { + if actualValue := Contains(1, 2, 3); actualValue != true { t.Errorf("Got %v expected %v", actualValue, true) } - if actualValue := set.Contains(1, 2, 3, 4); actualValue != false { + if actualValue := Contains(1, 2, 3, 4); actualValue != false { t.Errorf("Got %v expected %v", actualValue, false) } } func TestSetRemove(t *testing.T) { set := NewSet() - set.Add(3, 1, 2) - set.Remove() - if actualValue := set.Size(); actualValue != 3 { + Add(3, 1, 2) + Remove() + if actualValue := Size(); actualValue != 3 { t.Errorf("Got %v expected %v", actualValue, 3) } - set.Remove(1) - if actualValue := set.Size(); actualValue != 2 { + Remove(1) + if actualValue := Size(); actualValue != 2 { t.Errorf("Got %v expected %v", actualValue, 2) } - set.Remove(3) - set.Remove(3) - set.Remove() - set.Remove(2) - if actualValue := set.Size(); actualValue != 0 { + Remove(3) + Remove(3) + Remove() + Remove(2) + if actualValue := Size(); actualValue != 0 { t.Errorf("Got %v expected %v", actualValue, 0) } } @@ -92,7 +92,7 @@ func TestSetRemove(t *testing.T) { func benchmarkContains(b *testing.B, set *HashSet, size int) { for i := 0; i < b.N; i++ { for n := 0; n < size; n++ { - set.Contains(n) + Contains(n) } } } @@ -100,7 +100,7 @@ func benchmarkContains(b *testing.B, set *HashSet, size int) { func benchmarkAdd(b *testing.B, set *HashSet, size int) { for i := 0; i < b.N; i++ { for n := 0; n < size; n++ { - set.Add(n) + Add(n) } } } @@ -108,7 +108,7 @@ func benchmarkAdd(b *testing.B, set *HashSet, size int) { func benchmarkRemove(b *testing.B, set *HashSet, size int) { for i := 0; i < b.N; i++ { for n := 0; n < size; n++ { - set.Remove(n) + Remove(n) } } } @@ -118,7 +118,7 @@ func BenchmarkHashSetContains100(b *testing.B) { size := 100 set := NewSet() for n := 0; n < size; n++ { - set.Add(n) + Add(n) } b.StartTimer() benchmarkContains(b, set, size) @@ -129,7 +129,7 @@ func BenchmarkHashSetContains1000(b *testing.B) { size := 1000 set := NewSet() for n := 0; n < size; n++ { - set.Add(n) + Add(n) } b.StartTimer() benchmarkContains(b, set, size) @@ -140,7 +140,7 @@ func BenchmarkHashSetContains10000(b *testing.B) { size := 10000 set := NewSet() for n := 0; n < size; n++ { - set.Add(n) + Add(n) } b.StartTimer() benchmarkContains(b, set, size) @@ -151,7 +151,7 @@ func BenchmarkHashSetContains100000(b *testing.B) { size := 100000 set := NewSet() for n := 0; n < size; n++ { - set.Add(n) + Add(n) } b.StartTimer() benchmarkContains(b, set, size) @@ -170,7 +170,7 @@ func BenchmarkHashSetAdd1000(b *testing.B) { size := 1000 set := NewSet() for n := 0; n < size; n++ { - set.Add(n) + Add(n) } b.StartTimer() benchmarkAdd(b, set, size) @@ -181,7 +181,7 @@ func BenchmarkHashSetAdd10000(b *testing.B) { size := 10000 set := NewSet() for n := 0; n < size; n++ { - set.Add(n) + Add(n) } b.StartTimer() benchmarkAdd(b, set, size) @@ -192,7 +192,7 @@ func BenchmarkHashSetAdd100000(b *testing.B) { size := 100000 set := NewSet() for n := 0; n < size; n++ { - set.Add(n) + Add(n) } b.StartTimer() benchmarkAdd(b, set, size) @@ -203,7 +203,7 @@ func BenchmarkHashSetRemove100(b *testing.B) { size := 100 set := NewSet() for n := 0; n < size; n++ { - set.Add(n) + Add(n) } b.StartTimer() benchmarkRemove(b, set, size) @@ -214,7 +214,7 @@ func BenchmarkHashSetRemove1000(b *testing.B) { size := 1000 set := NewSet() for n := 0; n < size; n++ { - set.Add(n) + Add(n) } b.StartTimer() benchmarkRemove(b, set, size) @@ -225,7 +225,7 @@ func BenchmarkHashSetRemove10000(b *testing.B) { size := 10000 set := NewSet() for n := 0; n < size; n++ { - set.Add(n) + Add(n) } b.StartTimer() benchmarkRemove(b, set, size) @@ -236,7 +236,7 @@ func BenchmarkHashSetRemove100000(b *testing.B) { size := 100000 set := NewSet() for n := 0; n < size; n++ { - set.Add(n) + Add(n) } b.StartTimer() benchmarkRemove(b, set, size)