2. Design pattern object : QrSegment, MakeAlphaNumericToSegment,MakeBytesToSegment, MakeNumericToSegment 3. reason : function to make segment is changed by kind of string. And there is possible to add function to make segment. 4. explanation : product : MakeSegment, concrete product : MakeBytesToSegment, MakeNumericToSegment, MakeAlphaNumericToSegment creator : QrSegmentTo concrete creator : MakeSegmentFactorypull/90/head^2
parent
27dc7057c9
commit
9f70303e5d
@ -0,0 +1,4 @@
|
||||
|
||||
public interface MakeSegment {
|
||||
public QrSegment excute(String text);
|
||||
}
|
@ -0,0 +1,15 @@
|
||||
public class MakeSegmentFactory {
|
||||
public static MakeSegment getMakeSegment(String text) {
|
||||
MakeSegment makeSegment = null;
|
||||
|
||||
if (text.equals("")); // Leave result empty
|
||||
else if (QrSegment.NUMERIC_REGEX.matcher(text).matches())
|
||||
makeSegment = new MakeNumericToSegment();
|
||||
else if (QrSegment.ALPHANUMERIC_REGEX.matcher(text).matches())
|
||||
makeSegment = new MakeAlphaNumericToSegment();
|
||||
else
|
||||
makeSegment = new MakeBytesToSegment();
|
||||
|
||||
return makeSegment;
|
||||
}
|
||||
}
|
Loading…
Reference in new issue