1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133
| public class FastDFSOperation { private static boolean hasInited = false; private static void Init() { synchronized (TXFastDFSOperation.class) { if (hasInited) return; try { File file = new File(Thread.currentThread().getContextClassLoader().getResource("fdfs_client.conf").toURI()); ClientGlobal.init(file.getAbsolutePath()); TXFastDFSOperation.hasInited = true; } catch (Exception e) { e.printStackTrace(); } } } private static StorageClient getStorageClient() throws IOException{ Init(); TrackerClient trackerClient = new TrackerClient(); TrackerServer trackerServer = trackerClient.getConnection(); ProtoCommon.activeTest(trackerServer.getSocket()); StorageClient storageClient = new StorageClient(trackerServer, null); return storageClient; }
public static String[] Uploadfile(InputStream arg, Long size,String groupname,String flexname) { String[] stringArray = null; NameValuePair[] nvp = null; byte[] fileBuffer = null; try{ fileBuffer = changeStreamToByteArray(arg); nvp = new NameValuePair[]{new NameValuePair("size", size.toString())}; stringArray = getStorageClient().upload_file(groupname, fileBuffer, flexname, nvp); }catch (Exception e) { e.printStackTrace(); } return stringArray; }
public static Integer deleteFile(String group, String index) { Integer returnValue = null; try{ returnValue = getStorageClient().delete_file(group, index); }catch (Exception e) { e.printStackTrace(); } return returnValue; }
public static InputStream DownloadFile(String group, String index, Long offset, Long downByte) { InputStream inputStream = null; try { byte[] fileBuffer = getStorageClient().download_file(group, index, offset, downByte); inputStream = new ByteArrayInputStream(fileBuffer); } catch (IOException | MyException e) { e.printStackTrace(); } return inputStream; }
public static byte[] DownloadFileReByte(String group, String index, Long offset, Long downByte) { byte[] fileBuffer = null; try { fileBuffer = getStorageClient().download_file(group, index, offset, downByte); } catch (IOException | MyException e) { e.printStackTrace(); } return fileBuffer; }
public static Long GetFileSize(String group, String index) { FileInfo fileInfo = null; Long returnValue = new Long(-1); try { fileInfo = getStorageClient().get_file_info(group, index); } catch (Exception e) { e.printStackTrace(); } if(fileInfo != null) { returnValue = fileInfo.getFileSize(); } return returnValue; }
private static byte[] changeStreamToByteArray(InputStream is) throws IOException { ByteArrayOutputStream swapStream = new ByteArrayOutputStream(); byte[] buff = new byte[100]; int offset = 0; while((offset = is.read(buff, 0, 100)) > 0) { swapStream.write(buff, 0, offset); } byte[] fileBuffer = swapStream.toByteArray(); return fileBuffer; } }
|