Package org.kitesdk.morphline.api

Examples of org.kitesdk.morphline.api.Record


    };
   
    for (int i = 0; i < files.length; i += 3) {
      byte[] body = Files.toByteArray(new File(files[i+0]));
      ListMultimap<String, Object> emptyMap = ArrayListMultimap.create();
      Record event = createEvent(new ByteArrayInputStream(body), emptyMap);
      assertEquals(files[i+1], detect(event, false));
    }
   
    for (int i = 0; i < files.length; i += 3) {
      byte[] body = Files.toByteArray(new File(files[i+0]));
      ListMultimap headers = ImmutableListMultimap.of(Fields.ATTACHMENT_NAME, new File(files[i+0]).getName());
      Record event = createEvent(new ByteArrayInputStream(body), headers);
      assertEquals(files[i+2], detect(event, true));
    }
   
    for (int i = 0; i < files.length; i += 3) {
      byte[] body = Files.toByteArray(new File(files[i+0]));
      ListMultimap headers = ImmutableListMultimap.of(Fields.ATTACHMENT_NAME, new File(files[i+0]).getPath());
      Record event = createEvent(new ByteArrayInputStream(body), headers);
      assertEquals(files[i+2], detect(event, true));
    }

    // test excludeParameters flag:
    boolean excludeParameters = true;
    byte[] body = Files.toByteArray(new File(path + "/testWindows-x86-32.exe"));
    ListMultimap headers = ImmutableListMultimap.of(Fields.ATTACHMENT_NAME, new File(path + "/testWindows-x86-32.exe").getPath());
    Record event = createEvent(new ByteArrayInputStream(body), headers);
    assertEquals("application/x-msdownload", detect(event, true, excludeParameters));
  }
View Full Code Here


    ListMultimap<String, Object> emptyMap = ArrayListMultimap.create();
    return createEvent(new ByteArrayInputStream(bytes), emptyMap);
  }
 
  private Record createEvent(InputStream in, ListMultimap<String, Object> headers) {
    Record record = new Record();
    record.getFields().putAll(headers);
    record.replaceValues(Fields.ATTACHMENT_BODY, in);
    return record;
  }
View Full Code Here

    }

    private boolean parseEntry(ArchiveInputStream archive, ArchiveEntry entry, EmbeddedExtractor extractor, Record record) {
      String name = entry.getName();
      if (archive.canReadEntryData(entry)) {
        Record entrydata = new Record(); // TODO: or pass myself?
        //Record entrydata = record.copy();
       
        // For detectors to work, we need a mark/reset supporting
        // InputStream, which ArchiveInputStream isn't, so wrap
        TemporaryResources tmp = new TemporaryResources();
View Full Code Here

              break;
            }
            rootNode = iter.next();
          }
       
          Record doc = new Record();
          JsonNode user = rootNode.get("user");
          JsonNode idNode = rootNode.get("id_str");
          if (idNode == null || idNode.textValue() == null) {
            continue; // skip
          }
     
          doc.put("id", idPrefix + idNode.textValue());
          tryAddDate(doc, "created_at", rootNode.get("created_at"));         
          tryAddString(doc, "source", rootNode.get("source"));
          tryAddString(doc, "text", rootNode.get("text"));
          tryAddInt(doc, "retweet_count", rootNode.get("retweet_count"));
          tryAddBool(doc, "retweeted", rootNode.get("retweeted"));
View Full Code Here

  @Test
  public void testConvertHTML() throws Exception {
    morphline = createMorphline("test-morphlines/convertHTML");   
    InputStream in = new FileInputStream(new File(RESOURCES_DIR + "/test-documents/helloworld.html"));
    Record record = new Record();
    record.put("id", "123");
    record.put(Fields.ATTACHMENT_BODY, in);
    String expected = Files.toString(new File(RESOURCES_DIR + "/test-documents/convertHTML-expected-output.xml"), Charsets.UTF_8);
    processAndVerifySuccess(record,
        ImmutableMultimap.of("id", "123", Fields.MESSAGE, expected)
        );   
    in.close();
View Full Code Here

  @Test
  public void testConvertHTMLBlog() throws Exception {
    morphline = createMorphline("test-morphlines/convertHTML");   
    InputStream in = new FileInputStream(new File(RESOURCES_DIR + "/test-documents/blog.html"));
    Record record = new Record();
    record.put("id", "123");
    record.put(Fields.ATTACHMENT_BODY, in);
    String expected = Files.toString(new File(RESOURCES_DIR + "/test-documents/convertHTMLBlog-expected-output.xml"), Charsets.UTF_8);
    processAndVerifySuccess(record,
        ImmutableMultimap.of("id", "123", Fields.MESSAGE, expected)
        );   
    in.close();
View Full Code Here

  @Test
  public void testConvertHTMLBlogThenRunXSQLT() throws Exception {
    morphline = createMorphline("test-morphlines/convertHTMLBlogThenRunXSLT");   
    byte[] bytes = Files.toByteArray(new File(RESOURCES_DIR + "/test-documents/blog.html"));
    Record record = new Record();
    record.put("id", "123");
    record.put(Fields.ATTACHMENT_BODY, bytes);
    for (int i = 0; i < 3; i++) {
      assertTrue(morphline.process(record.copy())); // TODO check details
    }
  } 
View Full Code Here

  @Test
  public void testConvertHTMLAndExtractLinks() throws Exception {
    morphline = createMorphline("test-morphlines/convertHTMLandExtractLinks");   
    InputStream in = new FileInputStream(new File(RESOURCES_DIR + "/test-documents/helloworld.html"));
    Record record = new Record();
    record.put("id", "123");
    record.put(Fields.ATTACHMENT_BODY, in);
    processAndVerifySuccess(record,
        ImmutableMultimap.of("id", "123", "a", "Visit Foo!", "myhref", "http://www.foo.com/", "mytarget", "_foo"),
        ImmutableMultimap.of("id", "123", "a", "Visit Bar!", "myhref", "http://www.bar.com/")
        );   
    in.close();
View Full Code Here

              Collector myCollector = new Collector();
              Command myMorphline = new PipeBuilder().build(config, null, myCollector, ctx);
             
              long start = System.currentTimeMillis();
              while (System.currentTimeMillis() < start + durationMillis) {
                Record record = new Record();
                record.put("id", "123");
                record.put(Fields.ATTACHMENT_BODY, bytes);
                for (int i = 0; i < 3; i++) {
                  processAndVerifySuccess(myMorphline, myCollector, record.copy(),
                      ImmutableMultimap.of("id", "123", Fields.MESSAGE, expected)
                      );   
                }
                iters++;
                //break;
View Full Code Here

  @Test
  public void testIPv4() throws Exception {
    morphline = createMorphline("test-morphlines/geoIP");   
   
    Record record = new Record();
    String ip = "128.101.101.101";
    record.put("ip", ip);
    Record expected = new Record();
    expected.put("ip", ip);
    expected.put("/country/iso_code", "US");
    expected.put("/country/names/en", "United States");
    expected.put("/country/names/zh-CN", "美国");
    expected.put("/subdivisions[]/names/en", "Minnesota");
    expected.put("/subdivisions[]/iso_code", "MN");
    expected.put("/city/names/en", "Minneapolis");
    expected.put("/postal/code", "55455");
    expected.put("/location/latitude", 44.9733);
    expected.put("/location/longitude", -93.2323);
    expected.put("/location/latitude_longitude", "44.9733,-93.2323");
    expected.put("/location/longitude_latitude", "-93.2323,44.9733");
   
    processAndVerifySuccess(record, expected, false);
    Notifications.notifyShutdown(morphline);
    Notifications.notifyShutdown(morphline);
  }
View Full Code Here

TOP

Related Classes of org.kitesdk.morphline.api.Record

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.