test_class.declarator: date = new LocalDate(2013, 10, 2)
test_class.modifier: private
test_class.original_string: private LocalDate date = new LocalDate(2013, 10, 2);
test_class.type: LocalDate
test_class.var_name: date
test_class.file: aw-reporting-model/src/test/java/com/google/api/ads/adwords/awreporting/model/entities/DateRangeAndTypeTest.java
test_class.identifier: DateRangeAndTypeTest
test_case.body: @Test(expected = IllegalArgumentException.class)
    public void testInvalidValues2() {
      DateRangeAndType.fromValues(null, date, ReportDefinitionDateRangeType.CUSTOM_DATE);
    }
test_case.class_method_signature: DateRangeAndTypeTest.testInvalidValues2()
test_case.full_signature: @Test(expected = IllegalArgumentException.class) public void testInvalidValues2()
test_case.identifier: testInvalidValues2
test_case.invocations: fromValues
test_case.modifiers: @Test(expected = IllegalArgumentException.class) public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testInvalidValues2()
focal_class.declarator: DATE_FORMMATER = DateTimeFormat.forPattern("yyyyMMdd")
focal_class.modifier: private static final
focal_class.original_string: private static final DateTimeFormatter DATE_FORMMATER = DateTimeFormat.forPattern("yyyyMMdd");
focal_class.type: DateTimeFormatter
focal_class.var_name: DATE_FORMMATER
focal_class.declarator: startDate
focal_class.modifier: private final
focal_class.original_string: private final LocalDate startDate;
focal_class.type: LocalDate
focal_class.var_name: startDate
focal_class.declarator: endDate
focal_class.modifier: private final
focal_class.original_string: private final LocalDate endDate;
focal_class.type: LocalDate
focal_class.var_name: endDate
focal_class.declarator: type
focal_class.modifier: private final
focal_class.original_string: private final ReportDefinitionDateRangeType type;
focal_class.type: ReportDefinitionDateRangeType
focal_class.var_name: type
focal_class.file: aw-reporting-model/src/main/java/com/google/api/ads/adwords/awreporting/model/entities/DateRangeAndType.java
focal_class.identifier: DateRangeAndType
focal_class.class_method_signature: DateRangeAndType.DateRangeAndType(
        LocalDate startDate, LocalDate endDate, ReportDefinitionDateRangeType type)
focal_class.full_signature: private  DateRangeAndType(
        LocalDate startDate, LocalDate endDate, ReportDefinitionDateRangeType type)
focal_class.identifier: DateRangeAndType
focal_class.modifiers: private
focal_class.parameters: (
        LocalDate startDate, LocalDate endDate, ReportDefinitionDateRangeType type)
focal_class.signature:  DateRangeAndType(
        LocalDate startDate, LocalDate endDate, ReportDefinitionDateRangeType type)
focal_class.class_method_signature: DateRangeAndType.getStartDateStr()
focal_class.full_signature: public String getStartDateStr()
focal_class.identifier: getStartDateStr
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getStartDateStr()
focal_class.class_method_signature: DateRangeAndType.getEndDateStr()
focal_class.full_signature: public String getEndDateStr()
focal_class.identifier: getEndDateStr
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getEndDateStr()
focal_class.class_method_signature: DateRangeAndType.getTypeStr()
focal_class.full_signature: public String getTypeStr()
focal_class.identifier: getTypeStr
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getTypeStr()
focal_class.class_method_signature: DateRangeAndType.getStartDate()
focal_class.full_signature: public LocalDate getStartDate()
focal_class.identifier: getStartDate
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: LocalDate
focal_class.signature: LocalDate getStartDate()
focal_class.class_method_signature: DateRangeAndType.getEndDate()
focal_class.full_signature: public LocalDate getEndDate()
focal_class.identifier: getEndDate
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: LocalDate
focal_class.signature: LocalDate getEndDate()
focal_class.class_method_signature: DateRangeAndType.getType()
focal_class.full_signature: public ReportDefinitionDateRangeType getType()
focal_class.identifier: getType
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: ReportDefinitionDateRangeType
focal_class.signature: ReportDefinitionDateRangeType getType()
focal_class.class_method_signature: DateRangeAndType.getDateRange()
focal_class.full_signature: public DateRange getDateRange()
focal_class.identifier: getDateRange
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: DateRange
focal_class.signature: DateRange getDateRange()
focal_class.class_method_signature: DateRangeAndType.fromValues(LocalDate startDate, LocalDate endDate,
        ReportDefinitionDateRangeType type)
focal_class.full_signature: public static DateRangeAndType fromValues(LocalDate startDate, LocalDate endDate,
        ReportDefinitionDateRangeType type)
focal_class.identifier: fromValues
focal_class.modifiers: public static
focal_class.parameters: (LocalDate startDate, LocalDate endDate,
        ReportDefinitionDateRangeType type)
focal_class.return: DateRangeAndType
focal_class.signature: DateRangeAndType fromValues(LocalDate startDate, LocalDate endDate,
        ReportDefinitionDateRangeType type)
focal_class.class_method_signature: DateRangeAndType.fromString(final String dateRange)
focal_class.full_signature: public static DateRangeAndType fromString(final String dateRange)
focal_class.identifier: fromString
focal_class.modifiers: public static
focal_class.parameters: (final String dateRange)
focal_class.return: DateRangeAndType
focal_class.signature: DateRangeAndType fromString(final String dateRange)
focal_class.class_method_signature: DateRangeAndType.parseCustomFormat(final String dateRange)
focal_class.full_signature: private static DateRangeAndType parseCustomFormat(final String dateRange)
focal_class.identifier: parseCustomFormat
focal_class.modifiers: private static
focal_class.parameters: (final String dateRange)
focal_class.return: DateRangeAndType
focal_class.signature: DateRangeAndType parseCustomFormat(final String dateRange)
focal_class.class_method_signature: DateRangeAndType.parseEnumFormat(ReportDefinitionDateRangeType type)
focal_class.full_signature: private static DateRangeAndType parseEnumFormat(ReportDefinitionDateRangeType type)
focal_class.identifier: parseEnumFormat
focal_class.modifiers: private static
focal_class.parameters: (ReportDefinitionDateRangeType type)
focal_class.return: DateRangeAndType
focal_class.signature: DateRangeAndType parseEnumFormat(ReportDefinitionDateRangeType type)
focal_class.class_method_signature: DateRangeAndType.parseEnumFormat(final String dateRange)
focal_class.full_signature: private static DateRangeAndType parseEnumFormat(final String dateRange)
focal_class.identifier: parseEnumFormat
focal_class.modifiers: private static
focal_class.parameters: (final String dateRange)
focal_class.return: DateRangeAndType
focal_class.signature: DateRangeAndType parseEnumFormat(final String dateRange)
focal_method.body: public static DateRangeAndType fromValues(LocalDate startDate, LocalDate endDate,
        ReportDefinitionDateRangeType type) {
      if (startDate != null && endDate != null) {
        // Overwrite type to custom if start date & end date are provided.
        return new DateRangeAndType(startDate, endDate, ReportDefinitionDateRangeType.CUSTOM_DATE);
      } else if (type != null && type != ReportDefinitionDateRangeType.CUSTOM_DATE) {
        // Overwrite the provided start/end date if type is custom.
        return parseEnumFormat(type);
      } else {
        throw new IllegalArgumentException(
            "Must provide either: 'startDate' and 'endData', or 'type'.");
        }
    }
focal_method.class_method_signature: DateRangeAndType.fromValues(LocalDate startDate, LocalDate endDate,
        ReportDefinitionDateRangeType type)
focal_method.full_signature: public static DateRangeAndType fromValues(LocalDate startDate, LocalDate endDate,
        ReportDefinitionDateRangeType type)
focal_method.identifier: fromValues
focal_method.invocations: parseEnumFormat
focal_method.modifiers: public static
focal_method.parameters: (LocalDate startDate, LocalDate endDate,
        ReportDefinitionDateRangeType type)
focal_method.return: DateRangeAndType
focal_method.signature: DateRangeAndType fromValues(LocalDate startDate, LocalDate endDate,
        ReportDefinitionDateRangeType type)