View Javadoc

1   package org.vectomatic.file.impl;
2   
3   import org.vectomatic.file.Blob;
4   
5   public abstract class SliceImpl {
6   	public abstract Blob slice(Blob blob);
7   	
8   	public Blob slice(Blob blob, long start) {
9   		return slice_(blob, toString(start));
10  	}
11  	
12  	public Blob slice(Blob blob, long start, long end) {
13  		return slice_(blob, toString(start), toString(end));
14  	}
15  	
16  	public Blob slice(Blob blob, long start, long end, String contentType) {
17  		return slice_(blob, toString(start), toString(end), contentType);
18  	}
19  	
20  	static String toString(long l) {
21  		if (l > 9007199254740992L) {
22  			throw new NumberFormatException();
23  		}
24  		return Long.toString(l);
25  	}
26  
27  	abstract Blob slice_(Blob blob, String start);
28  	abstract Blob slice_(Blob blob, String start, String end);
29  	abstract Blob slice_(Blob blob, String start, String end, String contentType);
30  }