OpenCores
URL https://opencores.org/ocsvn/fpga-cf/fpga-cf/trunk

Subversion Repositories fpga-cf

[/] [fpga-cf/] [trunk/] [java/] [src/] [edu/] [byu/] [cc/] [plieber/] [fpgaenet/] [fcp/] [FCPTest.java] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 peteralieb
/**
2
 *
3
 */
4
package edu.byu.cc.plieber.fpgaenet.fcp;
5
 
6
import java.io.BufferedReader;
7
import java.io.File;
8
import java.io.FileInputStream;
9
import java.io.IOException;
10
import java.io.InputStream;
11
import java.io.InputStreamReader;
12
import java.net.InetAddress;
13
 
14
/**
15
 * @author plieber
16
 *
17
 */
18
public class FCPTest {
19
 
20
        /**
21
         * @param args
22
         */
23
        public static void main(String[] args) {
24
                // TODO Auto-generated method stub
25
                if (args.length != 5) {
26
                        System.out
27
                                        .println("usage: FCPTest <destaddr> <selfport> <destport> <datafile> <numToRead>");
28
                        return;
29
                }
30
                String addr = args[0];
31
                int port = Integer.parseInt(args[1]);
32
                int port2 = Integer.parseInt(args[2]);
33
                int numToRead = Integer.parseInt(args[4]);
34
 
35
                FCPProtocol protocol = null;
36
                try {
37
                        protocol = new FCPProtocol(port, port2);
38
                        if (args.length == 5) {
39
                                protocol.connect(InetAddress.getByName(addr), port2);
40
                                while (!protocol.connected)
41
                                        ;
42
                                // byte[] data = new byte[] { 0, 1, 2, 3 };
43
                                // for (int i = 8; i <= 10; i++) {
44
                                // protocol.send(i, data);
45
                                // }
46
                                // protocol.sendDataRequest(1, 5);
47
                                File file = new File(args[3]);
48
                                InputStream is = new FileInputStream(file);
49
                                long length = file.length();
50
                                if (length > Integer.MAX_VALUE) {
51
 
52
                                }
53
 
54
                                byte[] writereg = new byte[1024];
55
                                int offset = 0;
56
                                int numRead = 0;
57
                                while (offset < file.length()
58
                                                && (numRead = is.read(writereg, 0, 1024)) >= 0) {
59
                                        offset += numRead;
60
                                        try {
61
                                                protocol.send(3, writereg, numRead);
62
                                        } catch (FCPException e) {
63
                                                // TODO Auto-generated catch block
64
                                                e.printStackTrace();
65
                                        }
66
                                }
67
                                if (numToRead > 0) {
68
                                        byte[] read4 = new byte[] { (byte) ((numToRead >> 8) & 0xff), (byte) (numToRead & 0xff) };
69
                                        try {
70
                                                protocol.send(4, read4, read4.length);
71
                                                protocol.sendDataRequest(4, numToRead);
72
                                        } catch (FCPException e) {
73
                                                // TODO Auto-generated catch block
74
                                                e.printStackTrace();
75
                                        }
76
                                }
77
                        }
78
                } catch (IOException e) {
79
                        // TODO Auto-generated catch block
80
                        e.printStackTrace();
81
                }
82
                BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
83
                try {
84
                        in.readLine();
85
                } catch (IOException e) {
86
                        // TODO Auto-generated catch block
87
                        e.printStackTrace();
88
                }
89
                protocol.disconnect();
90
        }
91
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.