Last change
on this file since 193 was
193,
checked in by Maciej Komosinski, 10 years ago
|
Set svn:eol-style native for all textual files
|
-
Property svn:eol-style set to
native
|
File size:
1.4 KB
|
Rev | Line | |
---|
[77] | 1 | package com.framsticks.params; |
---|
| 2 | |
---|
[86] | 3 | import java.util.ArrayList; |
---|
[77] | 4 | import java.util.Iterator; |
---|
| 5 | import java.util.List; |
---|
| 6 | |
---|
[101] | 7 | public class ListSource implements Source { |
---|
[77] | 8 | |
---|
| 9 | private Iterator<String> iterator = null; |
---|
[101] | 10 | private final List<String> list; |
---|
[77] | 11 | |
---|
[101] | 12 | public ListSource(List<String> list) { |
---|
| 13 | this.list = list; |
---|
| 14 | iterator = list.iterator(); |
---|
[77] | 15 | } |
---|
| 16 | |
---|
[86] | 17 | @Override |
---|
[77] | 18 | public String getFilename() { |
---|
| 19 | return "<net>"; |
---|
| 20 | } |
---|
| 21 | |
---|
[86] | 22 | @Override |
---|
| 23 | public String readLine() { |
---|
| 24 | // if (iterator == null) { |
---|
| 25 | // return null; |
---|
| 26 | // } |
---|
| 27 | assert iterator != null; |
---|
[77] | 28 | if (iterator.hasNext()) { |
---|
| 29 | return iterator.next(); |
---|
| 30 | } |
---|
| 31 | return null; |
---|
| 32 | } |
---|
| 33 | |
---|
[86] | 34 | @Override |
---|
| 35 | public String demangleInclude(String include) { |
---|
[77] | 36 | return null; |
---|
| 37 | } |
---|
| 38 | |
---|
[86] | 39 | @Override |
---|
[101] | 40 | public Source openInclude(String include) { |
---|
[77] | 41 | return null; |
---|
| 42 | } |
---|
| 43 | |
---|
[86] | 44 | @Override |
---|
| 45 | public void close() { |
---|
| 46 | iterator = null; |
---|
[77] | 47 | } |
---|
[86] | 48 | |
---|
| 49 | public static ListSource createFrom(String... lines) { |
---|
| 50 | List<String> list = new ArrayList<String>(); |
---|
| 51 | for (String l : lines) { |
---|
| 52 | list.add(l); |
---|
| 53 | } |
---|
| 54 | return new ListSource(list); |
---|
| 55 | } |
---|
| 56 | |
---|
| 57 | @Override |
---|
| 58 | public boolean isClosed() { |
---|
| 59 | return iterator == null; |
---|
| 60 | } |
---|
[101] | 61 | |
---|
| 62 | @Override |
---|
| 63 | public String toString() { |
---|
| 64 | if (list.isEmpty()) { |
---|
| 65 | return "?"; |
---|
| 66 | } |
---|
| 67 | StringBuilder b = new StringBuilder(); |
---|
| 68 | int print = Math.min(list.size(), 3); |
---|
| 69 | for (int i = 0; i < print; ++i) { |
---|
| 70 | if (i != 0) { |
---|
| 71 | b.append(" "); |
---|
| 72 | } |
---|
| 73 | b.append(list.get(i)); |
---|
| 74 | } |
---|
[103] | 75 | if (list.size() > print) { |
---|
| 76 | b.append(" ..."); |
---|
| 77 | } |
---|
[101] | 78 | return b.toString(); |
---|
| 79 | } |
---|
| 80 | |
---|
[77] | 81 | } |
---|
Note: See
TracBrowser
for help on using the repository browser.