1 module hunt.http.codec.http.model.MultiPartWriter; 2 3 // import java.io.FilterWriter; 4 // import hunt.Exceptions; 5 // import java.io.Writer; 6 7 // class MultiPartWriter :FilterWriter { 8 9 // private static string __CRLF = "\015\012"; 10 // private static string __DASHDASH = "--"; 11 12 // static string MULTIPART_MIXED = MultiPartOutputStream.MULTIPART_MIXED; 13 // static string MULTIPART_X_MIXED_REPLACE = MultiPartOutputStream.MULTIPART_X_MIXED_REPLACE; 14 15 // private string boundary; 16 17 // private bool inPart = false; 18 19 // this(Writer out) throws IOException { 20 // super(out); 21 // boundary = "hunt" + System.identityHashCode(this) + to!long(System.currentTimeMillis(), 36); 22 23 // inPart = false; 24 // } 25 26 // /** 27 // * End the current part. 28 // * 29 // * @exception IOException 30 // * IOException 31 // */ 32 // override 33 // void close() throws IOException { 34 // try { 35 // if (inPart) 36 // out.write(__CRLF); 37 // out.write(__DASHDASH); 38 // out.write(boundary); 39 // out.write(__DASHDASH); 40 // out.write(__CRLF); 41 // inPart = false; 42 // } finally { 43 // super.close(); 44 // } 45 // } 46 47 // string getBoundary() { 48 // return boundary; 49 // } 50 51 // /** 52 // * Start creation of the next Content. 53 // * 54 // * @param contentType 55 // * the content type 56 // * @throws IOException 57 // * if unable to write the part 58 // */ 59 // void startPart(string contentType) throws IOException { 60 // if (inPart) 61 // out.write(__CRLF); 62 // out.write(__DASHDASH); 63 // out.write(boundary); 64 // out.write(__CRLF); 65 // out.write("Content-Type: "); 66 // out.write(contentType); 67 // out.write(__CRLF); 68 // out.write(__CRLF); 69 // inPart = true; 70 // } 71 72 // /** 73 // * end creation of the next Content. 74 // * 75 // * @throws IOException 76 // * if unable to write the part 77 // */ 78 // void endPart() throws IOException { 79 // if (inPart) 80 // out.write(__CRLF); 81 // inPart = false; 82 // } 83 84 // /** 85 // * Start creation of the next Content. 86 // * 87 // * @param contentType 88 // * the content type of the part 89 // * @param headers 90 // * the part headers 91 // * @throws IOException 92 // * if unable to write the part 93 // */ 94 // void startPart(string contentType, string[] headers) throws IOException { 95 // if (inPart) 96 // out.write(__CRLF); 97 // out.write(__DASHDASH); 98 // out.write(boundary); 99 // out.write(__CRLF); 100 // out.write("Content-Type: "); 101 // out.write(contentType); 102 // out.write(__CRLF); 103 // for (int i = 0; headers != null && i < headers.length; i++) { 104 // out.write(headers[i]); 105 // out.write(__CRLF); 106 // } 107 // out.write(__CRLF); 108 // inPart = true; 109 // } 110 111 // }