Skip to content

Commit a695b5f

Browse files
committed
j2obc was breaking because it expects all classes referenced cross-compilation unit to be specified in a compilation unit named after the class.
1 parent 0eb2546 commit a695b5f

3 files changed

Lines changed: 69 additions & 35 deletions

File tree

src/main/java/org/owasp/html/AttributePolicy.java

Lines changed: 1 addition & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -31,14 +31,11 @@
3131
import com.google.common.base.Optional;
3232
import com.google.common.collect.ImmutableList;
3333

34-
import java.util.Collection;
3534
import java.util.Set;
3635

3736
import javax.annotation.CheckReturnValue;
3837
import javax.annotation.Nullable;
39-
import javax.annotation.concurrent.Immutable;
4038

41-
import org.owasp.html.JoinedAttributePolicy.JoinableAttributePolicy;
4239
import org.owasp.html.Joinable.JoinHelper;
4340

4441
/**
@@ -128,37 +125,7 @@ public String apply(
128125
}
129126
};
130127

131-
}
132-
133-
@Immutable
134-
final class JoinedAttributePolicy implements AttributePolicy {
135-
final ImmutableList<AttributePolicy> policies;
136-
137-
JoinedAttributePolicy(Collection<? extends AttributePolicy> policies) {
138-
this.policies = ImmutableList.copyOf(policies);
139-
}
140-
141-
public @Nullable String apply(
142-
String elementName, String attributeName, @Nullable String rawValue) {
143-
String value = rawValue;
144-
for (AttributePolicy p : policies) {
145-
if (value == null) { break; }
146-
value = p.apply(elementName, attributeName, value);
147-
}
148-
return value;
149-
}
150-
151-
@Override
152-
public boolean equals(Object o) {
153-
return o != null && this.getClass() == o.getClass()
154-
&& policies.equals(((JoinedAttributePolicy) o).policies);
155-
}
156-
157-
@Override
158-
public int hashCode() {
159-
return policies.hashCode();
160-
}
161-
128+
/** An attribute policy that is joinable. */
162129
static interface JoinableAttributePolicy
163130
extends AttributePolicy, Joinable<JoinableAttributePolicy> {
164131
// Parameterized Appropriately.
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
// Copyright (c) 2011, Mike Samuel
2+
// All rights reserved.
3+
//
4+
// Redistribution and use in source and binary forms, with or without
5+
// modification, are permitted provided that the following conditions
6+
// are met:
7+
//
8+
// Redistributions of source code must retain the above copyright
9+
// notice, this list of conditions and the following disclaimer.
10+
// Redistributions in binary form must reproduce the above copyright
11+
// notice, this list of conditions and the following disclaimer in the
12+
// documentation and/or other materials provided with the distribution.
13+
// Neither the name of the OWASP nor the names of its contributors may
14+
// be used to endorse or promote products derived from this software
15+
// without specific prior written permission.
16+
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
17+
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
18+
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
19+
// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
20+
// COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
21+
// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
22+
// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
23+
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
24+
// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25+
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
26+
// ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27+
// POSSIBILITY OF SUCH DAMAGE.
28+
29+
package org.owasp.html;
30+
31+
import com.google.common.collect.ImmutableList;
32+
33+
import java.util.Collection;
34+
35+
import javax.annotation.Nullable;
36+
import javax.annotation.concurrent.Immutable;
37+
38+
39+
@Immutable
40+
final class JoinedAttributePolicy implements AttributePolicy {
41+
final ImmutableList<AttributePolicy> policies;
42+
43+
JoinedAttributePolicy(Collection<? extends AttributePolicy> policies) {
44+
this.policies = ImmutableList.copyOf(policies);
45+
}
46+
47+
public @Nullable String apply(
48+
String elementName, String attributeName, @Nullable String rawValue) {
49+
String value = rawValue;
50+
for (AttributePolicy p : policies) {
51+
if (value == null) { break; }
52+
value = p.apply(elementName, attributeName, value);
53+
}
54+
return value;
55+
}
56+
57+
@Override
58+
public boolean equals(Object o) {
59+
return o != null && this.getClass() == o.getClass()
60+
&& policies.equals(((JoinedAttributePolicy) o).policies);
61+
}
62+
63+
@Override
64+
public int hashCode() {
65+
return policies.hashCode();
66+
}
67+
}

src/main/java/org/owasp/html/StylingPolicy.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232

3333
import javax.annotation.Nullable;
3434

35-
import org.owasp.html.JoinedAttributePolicy.JoinableAttributePolicy;
35+
import org.owasp.html.AttributePolicy.JoinableAttributePolicy;
3636

3737
import com.google.common.annotations.VisibleForTesting;
3838
import com.google.common.base.Function;

0 commit comments

Comments
 (0)