Skip to content

Commit fead5e7

Browse files
authored
Merge pull request #45 from zeroae/chore/refactor-url-handler
Rename the B64 Protocol to MMAP.
2 parents ea1f7f4 + 039f97c commit fead5e7

File tree

2 files changed

+9
-12
lines changed

2 files changed

+9
-12
lines changed

src/main/java/co/zeroae/gate/App.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package co.zeroae.gate;
22

3-
import co.zeroae.gate.b64.Handler;
3+
import co.zeroae.gate.mmap.Handler;
44
import com.amazonaws.services.lambda.runtime.Context;
55
import com.amazonaws.services.lambda.runtime.RequestHandler;
66
import com.amazonaws.services.lambda.runtime.events.APIGatewayProxyRequestEvent;
@@ -52,7 +52,7 @@ public class App implements RequestHandler<APIGatewayProxyRequestEvent, APIGatew
5252
private static final AppMetadata metadata = loadMetadata();
5353
private static final DocumentLRUCache cache = AWSXRay.createSegment("Cache Init",
5454
() -> new DocumentLRUCache(App.CACHE_DIR, App.CACHE_DIR_USAGE));
55-
private static final URLStreamHandler b64Handler = new Handler();
55+
private static final URLStreamHandler mmapHandler = new Handler();
5656

5757
private static AppMetadata loadMetadata() {
5858
final AppMetadata rv = new AppMetadata();
@@ -180,14 +180,14 @@ private void featureMapPutContent(
180180
featureMap.put(Document.DOCUMENT_STRING_CONTENT_PARAMETER_NAME, content);
181181
else {
182182
// GATE FastInfosetFormat can not handle binary in the string content.
183-
Handler.paths.put(contentDigest, content);
183+
Handler.paths.put(contentDigest, Base64.decode(content));
184184
featureMap.put(
185185
Document.DOCUMENT_URL_PARAMETER_NAME,
186-
new URL("b64",
186+
new URL("mmap",
187187
mimeType != null ? Base64.encodeAsString(mimeType.getBytes()) : null,
188188
64,
189189
contentDigest,
190-
b64Handler));
190+
mmapHandler));
191191
}
192192
}
193193

src/main/java/co/zeroae/gate/b64/Handler.java renamed to src/main/java/co/zeroae/gate/mmap/Handler.java

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1-
package co.zeroae.gate.b64;
1+
package co.zeroae.gate.mmap;
22

33
import com.amazonaws.util.Base64;
4-
import com.amazonaws.util.StringInputStream;
5-
import org.apache.commons.codec.binary.Base64InputStream;
64

5+
import java.io.ByteArrayInputStream;
76
import java.io.IOException;
87
import java.io.InputStream;
98
import java.net.URL;
@@ -14,7 +13,7 @@
1413
import java.util.WeakHashMap;
1514

1615
public class Handler extends URLStreamHandler {
17-
static final public Map<String, String> paths = Collections.synchronizedMap(new WeakHashMap<>());
16+
public static final Map<String, byte[]> paths = Collections.synchronizedMap(new WeakHashMap<>());
1817

1918
@Override
2019
protected URLConnection openConnection(URL u) {
@@ -43,9 +42,7 @@ public String getContentType() {
4342

4443
@Override
4544
public InputStream getInputStream() throws IOException {
46-
return new Base64InputStream(new StringInputStream(
47-
paths.get(url.getPath())
48-
));
45+
return new ByteArrayInputStream(paths.get(url.getPath()));
4946
}
5047
}
5148
}

0 commit comments

Comments
 (0)