Kaynağa Gözat

Merge 63d6fcd7b37e2840e398fdc9c60f5395bce121d0 into 0665dd6f3de2bb92a7f856bde34efac87df0531f

Jordan Eldridge 8 yıl önce
ebeveyn
işleme
aa5e4126fc
No account linked to committer's email

+ 23
- 4
src/main/java/com/zipcodewilmington/phone/PhoneNumberFactory.java Dosyayı Görüntüle

1
 package com.zipcodewilmington.phone;
1
 package com.zipcodewilmington.phone;
2
 
2
 
3
 import com.zipcodewilmington.exceptions.InvalidPhoneNumberFormatException;
3
 import com.zipcodewilmington.exceptions.InvalidPhoneNumberFormatException;
4
+import com.zipcodewilmington.tools.RandomNumberFactory;
4
 
5
 
6
+import java.util.Random;
5
 import java.util.logging.Logger;
7
 import java.util.logging.Logger;
6
 
8
 
7
 /**
9
 /**
20
      * @return array of randomly generated PhoneNumber objects
22
      * @return array of randomly generated PhoneNumber objects
21
      */ //TODO - Implement logic
23
      */ //TODO - Implement logic
22
     public static PhoneNumber[] createRandomPhoneNumberArray(int phoneNumberCount) {
24
     public static PhoneNumber[] createRandomPhoneNumberArray(int phoneNumberCount) {
23
-        return null;
25
+        PhoneNumber[] newPhoneNumbers = new PhoneNumber[phoneNumberCount];
26
+        for (int i =0; i <phoneNumberCount;i++){
27
+            createRandomPhoneNumber();
28
+        }
29
+        return newPhoneNumbers;
24
     }
30
     }
25
 
31
 
26
     /**
32
     /**
27
      * @return an instance of PhoneNumber with randomly generated phone number value
33
      * @return an instance of PhoneNumber with randomly generated phone number value
28
      */ //TODO - Implement logic
34
      */ //TODO - Implement logic
29
     public static PhoneNumber createRandomPhoneNumber() {
35
     public static PhoneNumber createRandomPhoneNumber() {
30
-        return createPhoneNumberSafely(-1, -1, -1);
36
+       // return createPhoneNumberSafely(-1, -1, -1);
37
+        int newCodeNumber = RandomNumberFactory.createInteger(200,555);
38
+        int newCentralNum = RandomNumberFactory.createInteger(200,555);
39
+        int newLine = RandomNumberFactory.createInteger(2000,5555);
40
+        return createPhoneNumberSafely(newCodeNumber,newCentralNum,newLine);
41
+
42
+
31
     }
43
     }
32
 
44
 
33
 
45
 
38
      * @return a new phone number object
50
      * @return a new phone number object
39
      */ //TODO - if input is valid, return respective PhoneNumber object, else return null
51
      */ //TODO - if input is valid, return respective PhoneNumber object, else return null
40
     public static PhoneNumber createPhoneNumberSafely(int areaCode, int centralOfficeCode, int phoneLineCode) {
52
     public static PhoneNumber createPhoneNumberSafely(int areaCode, int centralOfficeCode, int phoneLineCode) {
41
-        return createPhoneNumber(null);
53
+        String newNumber = "("+ areaCode +")-" + centralOfficeCode + "-" + phoneLineCode;
54
+        try {
55
+            System.out.println(newNumber);
56
+            return createPhoneNumber(newNumber);
57
+        } catch(InvalidPhoneNumberFormatException){
58
+            return createPhoneNumber(null);
59
+        }
60
+
42
     }
61
     }
43
 
62
 
44
     /**
63
     /**
47
      * @throws InvalidPhoneNumberFormatException - thrown if phoneNumberString does not match acceptable format
66
      * @throws InvalidPhoneNumberFormatException - thrown if phoneNumberString does not match acceptable format
48
      */ // TODO - Add throws statement to method signature
67
      */ // TODO - Add throws statement to method signature
49
     public static PhoneNumber createPhoneNumber(String phoneNumberString) {
68
     public static PhoneNumber createPhoneNumber(String phoneNumberString) {
50
-        return null;
69
+        return new PhoneNumber(phoneNumberString);
51
     }
70
     }
52
 }
71
 }