Skip to content

Commit 5b22d7d

Browse files
committed
clean code
1 parent e804bb2 commit 5b22d7d

9 files changed

Lines changed: 165 additions & 381 deletions

File tree

paimon-common/src/main/java/org/apache/paimon/data/Blob.java

Lines changed: 0 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -38,31 +38,6 @@
3838
@Public
3939
public interface Blob {
4040

41-
/**
42-
* The placeholder blob, mainly for blob update in data-evolution. It should never be exposed to
43-
* users.
44-
*/
45-
Blob PLACE_HOLDER =
46-
new Blob() {
47-
@Override
48-
public byte[] toData() {
49-
throw new UnsupportedOperationException(
50-
"Should never call this method for placeholder blob.");
51-
}
52-
53-
@Override
54-
public BlobDescriptor toDescriptor() {
55-
throw new UnsupportedOperationException(
56-
"Should never call this method for placeholder blob.");
57-
}
58-
59-
@Override
60-
public SeekableInputStream newInputStream() throws IOException {
61-
throw new UnsupportedOperationException(
62-
"Should never call this method for placeholder blob.");
63-
}
64-
};
65-
6641
byte[] toData();
6742

6843
BlobDescriptor toDescriptor();
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
/*
2+
* Licensed to the Apache Software Foundation (ASF) under one
3+
* or more contributor license agreements. See the NOTICE file
4+
* distributed with this work for additional information
5+
* regarding copyright ownership. The ASF licenses this file
6+
* to you under the Apache License, Version 2.0 (the
7+
* "License"); you may not use this file except in compliance
8+
* with the License. You may obtain a copy of the License at
9+
*
10+
* http://www.apache.org/licenses/LICENSE-2.0
11+
*
12+
* Unless required by applicable law or agreed to in writing, software
13+
* distributed under the License is distributed on an "AS IS" BASIS,
14+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15+
* See the License for the specific language governing permissions and
16+
* limitations under the License.
17+
*/
18+
19+
package org.apache.paimon.data;
20+
21+
import org.apache.paimon.fs.SeekableInputStream;
22+
23+
import java.io.IOException;
24+
import java.io.Serializable;
25+
26+
/**
27+
* The placeholder blob, mainly for blob update in data-evolution. It should never be exposed to
28+
* users.
29+
*/
30+
public class BlobPlaceholder implements Blob, Serializable {
31+
32+
private static final long serialVersionUID = 1L;
33+
34+
public static final BlobPlaceholder INSTANCE = new BlobPlaceholder();
35+
36+
private BlobPlaceholder() {}
37+
38+
private Object readResolve() {
39+
return INSTANCE;
40+
}
41+
42+
@Override
43+
public byte[] toData() {
44+
throw new UnsupportedOperationException(
45+
"Should never call this method for placeholder blob.");
46+
}
47+
48+
@Override
49+
public BlobDescriptor toDescriptor() {
50+
throw new UnsupportedOperationException(
51+
"Should never call this method for placeholder blob.");
52+
}
53+
54+
@Override
55+
public SeekableInputStream newInputStream() throws IOException {
56+
throw new UnsupportedOperationException(
57+
"Should never call this method for placeholder blob.");
58+
}
59+
}

0 commit comments

Comments
 (0)