test_class.file: sdmxprovider/src/test/java/ec/tss/tsproviders/sdmx/engine/GuessingCompactFactoryTest.java
test_class.identifier: GuessingCompactFactoryTest
test_case.body: @Test
      public void testCreate() throws Exception {
          SdmxSource source = new GuessingCompactFactory().create(load("/sdmx-compact-sample.xml"));
          assertEquals(4, source.items.size());
  
          SdmxSeries s0 = (SdmxSeries) source.items.get(0);
          assertEquals("COLLECTION=B, FREQ=M, JD_CATEGORY=A, JD_TYPE=P, VIS_CTY=MX", s0.id);
          assertEquals(12, s0.data.get().getObsCount());
          assertEquals(TsFrequency.Monthly, s0.data.get().getFrequency());
          assertEquals(new TsPeriod(TsFrequency.Monthly, 2000, 0), s0.data.get().getStart());
          assertEquals(new TsPeriod(TsFrequency.Monthly, 2000, 11), s0.data.get().getLastPeriod());
          assertArrayEquals(new double[]{3.14, 2.29, 3.14, 5.24, 3.14, 3.78, 3.65, 2.37, 3.14, 3.17, 3.34, 1.21}, s0.data.get().internalStorage(), 0);
  
          SdmxSeries s1 = (SdmxSeries) source.items.get(1);
          assertEquals("COLLECTION=B, FREQ=A, JD_CATEGORY=A, JD_TYPE=P, VIS_CTY=MX", s1.id);
          assertEquals(1, s1.data.get().getObsCount());
          assertEquals(TsFrequency.Yearly, s1.data.get().getFrequency());
          assertEquals(new TsPeriod(TsFrequency.Yearly, 2000, 0), s1.data.get().getStart());
          assertEquals(s1.data.get().getStart(), s1.data.get().getLastPeriod());
          assertArrayEquals(new double[]{3.14}, s1.data.get().internalStorage(), 0);
      }
test_case.class_method_signature: GuessingCompactFactoryTest.testCreate()
test_case.full_signature: @Test public void testCreate()
test_case.identifier: testCreate
test_case.invocations: create load assertEquals size get assertEquals assertEquals getObsCount get assertEquals getFrequency get assertEquals getStart get assertEquals getLastPeriod get assertArrayEquals internalStorage get get assertEquals assertEquals getObsCount get assertEquals getFrequency get assertEquals getStart get assertEquals getStart get getLastPeriod get assertArrayEquals internalStorage get
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testCreate()
focal_class.declarator: TIME_FORMAT_ATTRIBUTE = "TIME_FORMAT"
focal_class.modifier: private static final
focal_class.original_string: private static final String TIME_FORMAT_ATTRIBUTE = "TIME_FORMAT";
focal_class.type: String
focal_class.var_name: TIME_FORMAT_ATTRIBUTE
focal_class.declarator: FREQ_ATTRIBUTE = "FREQ"
focal_class.modifier: private static final
focal_class.original_string: private static final String FREQ_ATTRIBUTE = "FREQ";
focal_class.type: String
focal_class.var_name: FREQ_ATTRIBUTE
focal_class.declarator: TIME_PERIOD_ATTRIBUTE = "TIME_PERIOD"
focal_class.modifier: private static final
focal_class.original_string: private static final String TIME_PERIOD_ATTRIBUTE = "TIME_PERIOD";
focal_class.type: String
focal_class.var_name: TIME_PERIOD_ATTRIBUTE
focal_class.declarator: OBS_VALUE_ATTRIBUTE = "OBS_VALUE"
focal_class.modifier: private static final
focal_class.original_string: private static final String OBS_VALUE_ATTRIBUTE = "OBS_VALUE";
focal_class.type: String
focal_class.var_name: OBS_VALUE_ATTRIBUTE
focal_class.declarator: DEFAULT_DATA_FORMAT = DataFormat.ROOT
focal_class.modifier: private static final
focal_class.original_string: private static final DataFormat DEFAULT_DATA_FORMAT = DataFormat.ROOT;
focal_class.type: DataFormat
focal_class.var_name: DEFAULT_DATA_FORMAT
focal_class.file: sdmxprovider/src/main/java/ec/tss/tsproviders/sdmx/engine/GuessingCompactFactory.java
focal_class.identifier: GuessingCompactFactory
focal_class.class_method_signature: GuessingCompactFactory.getName()
focal_class.full_signature: @Override public String getName()
focal_class.identifier: getName
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getName()
focal_class.class_method_signature: GuessingCompactFactory.isValid(Document doc)
focal_class.full_signature: @Override public boolean isValid(Document doc)
focal_class.identifier: isValid
focal_class.modifiers: @Override public
focal_class.parameters: (Document doc)
focal_class.return: boolean
focal_class.signature: boolean isValid(Document doc)
focal_class.class_method_signature: GuessingCompactFactory.create(Document doc)
focal_class.full_signature: @Override public SdmxSource create(Document doc)
focal_class.identifier: create
focal_class.modifiers: @Override public
focal_class.parameters: (Document doc)
focal_class.return: SdmxSource
focal_class.signature: SdmxSource create(Document doc)
focal_class.class_method_signature: GuessingCompactFactory.hasKeyFamilyRef(Node dataSetNode)
focal_class.full_signature: private static boolean hasKeyFamilyRef(Node dataSetNode)
focal_class.identifier: hasKeyFamilyRef
focal_class.modifiers: private static
focal_class.parameters: (Node dataSetNode)
focal_class.return: boolean
focal_class.signature: boolean hasKeyFamilyRef(Node dataSetNode)
focal_class.class_method_signature: GuessingCompactFactory.getSdmxItems(Node dataSetNode, Calendar cal)
focal_class.full_signature: private static List<SdmxItem> getSdmxItems(Node dataSetNode, Calendar cal)
focal_class.identifier: getSdmxItems
focal_class.modifiers: private static
focal_class.parameters: (Node dataSetNode, Calendar cal)
focal_class.return: List<SdmxItem>
focal_class.signature: List<SdmxItem> getSdmxItems(Node dataSetNode, Calendar cal)
focal_class.class_method_signature: GuessingCompactFactory.getSdmxSeries(Node seriesNode, Calendar cal)
focal_class.full_signature: private static SdmxSeries getSdmxSeries(Node seriesNode, Calendar cal)
focal_class.identifier: getSdmxSeries
focal_class.modifiers: private static
focal_class.parameters: (Node seriesNode, Calendar cal)
focal_class.return: SdmxSeries
focal_class.signature: SdmxSeries getSdmxSeries(Node seriesNode, Calendar cal)
focal_class.class_method_signature: GuessingCompactFactory.getData(Node seriesNode, TimeFormat timeFormat, Calendar cal)
focal_class.full_signature: private static OptionalTsData getData(Node seriesNode, TimeFormat timeFormat, Calendar cal)
focal_class.identifier: getData
focal_class.modifiers: private static
focal_class.parameters: (Node seriesNode, TimeFormat timeFormat, Calendar cal)
focal_class.return: OptionalTsData
focal_class.signature: OptionalTsData getData(Node seriesNode, TimeFormat timeFormat, Calendar cal)
focal_class.class_method_signature: GuessingCompactFactory.getPeriod(NamedNodeMap obs, IParser<Date> toPeriod)
focal_class.full_signature: private static Date getPeriod(NamedNodeMap obs, IParser<Date> toPeriod)
focal_class.identifier: getPeriod
focal_class.modifiers: private static
focal_class.parameters: (NamedNodeMap obs, IParser<Date> toPeriod)
focal_class.return: Date
focal_class.signature: Date getPeriod(NamedNodeMap obs, IParser<Date> toPeriod)
focal_class.class_method_signature: GuessingCompactFactory.getValue(NamedNodeMap obs, IParser<Number> toValue)
focal_class.full_signature: private static Number getValue(NamedNodeMap obs, IParser<Number> toValue)
focal_class.identifier: getValue
focal_class.modifiers: private static
focal_class.parameters: (NamedNodeMap obs, IParser<Number> toValue)
focal_class.return: Number
focal_class.signature: Number getValue(NamedNodeMap obs, IParser<Number> toValue)
focal_class.class_method_signature: GuessingCompactFactory.getKey(Node seriesNode)
focal_class.full_signature: private static ImmutableList<Map.Entry<String, String>> getKey(Node seriesNode)
focal_class.identifier: getKey
focal_class.modifiers: private static
focal_class.parameters: (Node seriesNode)
focal_class.return: ImmutableList<Map.Entry<String, String>>
focal_class.signature: ImmutableList<Map.Entry<String, String>> getKey(Node seriesNode)
focal_class.class_method_signature: GuessingCompactFactory.getTimeFormat(Node seriesNode)
focal_class.full_signature: private static TimeFormat getTimeFormat(Node seriesNode)
focal_class.identifier: getTimeFormat
focal_class.modifiers: private static
focal_class.parameters: (Node seriesNode)
focal_class.return: TimeFormat
focal_class.signature: TimeFormat getTimeFormat(Node seriesNode)
focal_class.class_method_signature: GuessingCompactFactory.lookupDataSetNode(Document doc)
focal_class.full_signature: private static Optional<Node> lookupDataSetNode(Document doc)
focal_class.identifier: lookupDataSetNode
focal_class.modifiers: private static
focal_class.parameters: (Document doc)
focal_class.return: Optional<Node>
focal_class.signature: Optional<Node> lookupDataSetNode(Document doc)
focal_class.class_method_signature: GuessingCompactFactory.lookupObservations(Node seriesNode)
focal_class.full_signature: private static Stream<NamedNodeMap> lookupObservations(Node seriesNode)
focal_class.identifier: lookupObservations
focal_class.modifiers: private static
focal_class.parameters: (Node seriesNode)
focal_class.return: Stream<NamedNodeMap>
focal_class.signature: Stream<NamedNodeMap> lookupObservations(Node seriesNode)
focal_class.superclass: extends AbstractDocumentFactory
focal_method.body: @Override
      public SdmxSource create(Document doc) {
          Optional<Node> dataSetNode = lookupDataSetNode(doc);
          return new SdmxSource(SdmxSource.Type.COMPACT, getSdmxItems(dataSetNode.get(), new GregorianCalendar()));
      }
focal_method.class_method_signature: GuessingCompactFactory.create(Document doc)
focal_method.full_signature: @Override public SdmxSource create(Document doc)
focal_method.identifier: create
focal_method.invocations: lookupDataSetNode getSdmxItems get
focal_method.modifiers: @Override public
focal_method.parameters: (Document doc)
focal_method.return: SdmxSource
focal_method.signature: SdmxSource create(Document doc)