// ĠCopyright Ġ 2 0 2 1 ĠSt rix py rr Ċ // Ċ // ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ // Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ // ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ // Ċ // ĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ // Ċ // ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ // Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ // ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ // ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ // Ġlimitations Ġunder Ġthe ĠLicense . Ċ package Ġst rix py rr . e agle eye . data . sources . ingest Ċ Ċ import Ġst rix py rr . e agle eye . data . sources . ingest . IT ab ular Stream Metadata . I Column Names Ċ import Ġst rix py rr . e agle eye . data . sources . ingest . Stream Metadata Pre sets . Auto Detect Delimiter Ċ import Ġst rix py rr . e agle eye . data . sources . ingest . Tab ular Stream Metadata . Column Names Ċ Ċ // ĠContains Ġmetadata Ġclasses Ġthat Ġprovide Ġinformation Ġto Ġfacilitate Ġing esting Ġdata Ċ // Ġsuch Ġas Ġcolumn Ġinformation , Ġformats , Ġetc . Ċ Ċ interface ĠI Ingest Stream Metadata Ċ Ċ interface ĠI Tab ular Stream Metadata Ġ: ĠI Ingest Stream Metadata Ċ { Ċ ĉ interface ĠI Column Names Ċ ĉ { Ċĉ ĉ val ĠĠĠĠ Ġsymbol : ĠString Ċĉ ĉ val ĠĠĠĠĠĠ Ġtime : ĠString Ċĉ ĉ val Ġ Ġopen Price : ĠString Ċĉ ĉ val Ġ Ġhigh Price : ĠString Ċĉ ĉ val ĠĠ Ġlow Price : ĠString Ċĉ ĉ val Ġclose Price : ĠString Ċĉ ĉ val ĠĠĠĠ Ġvolume : ĠString ĊĉĉĊĉ ĉ operator Ġfun Ġcomponent 1 () Ġ= ĠĠĠĠ Ġsymbol Ċĉ ĉ operator Ġfun Ġcomponent 2 () Ġ= ĠĠĠĠĠĠ Ġtime Ċĉ ĉ operator Ġfun Ġcomponent 3 () Ġ= Ġ Ġopen Price Ċĉ ĉ operator Ġfun Ġcomponent 4 () Ġ= Ġ Ġhigh Price Ċĉ ĉ operator Ġfun Ġcomponent 5 () Ġ= ĠĠ Ġlow Price Ċĉ ĉ operator Ġfun Ġcomponent 6 () Ġ= Ġclose Price Ċĉ ĉ operator Ġfun Ġcomponent 7 () Ġ= ĠĠĠĠ Ġvolume Ċ ĉ } ĊĉĊ ĉ val Ġcolumn Names : ĠI Column Names Ċ ĉ val Ġtime Format Ġ: ĠTime Format Ċ ĉ val Ġdelimiter Ġ Ġ: ĠChar Ċ ĉ val Ġescape ĠĠĠĠ Ġ: ĠChar ĊĉĊ ĉ operator Ġfun Ġcomponent 1 () Ġ= Ġcolumn Names Ċ ĉ operator Ġfun Ġcomponent 2 () Ġ= Ġtime Format Ċ ĉ operator Ġfun Ġcomponent 3 () Ġ= Ġdelimiter Ċ ĉ operator Ġfun Ġcomponent 4 () Ġ= Ġescape Ċ } Ċ Ċ data Ġclass ĠTab ular Stream Metadata ( Ċ ĉ override Ġval Ġcolumn Names : ĠColumn Names , Ċ ĉ override Ġval Ġtime Format Ġ: ĠTime Format , Ċ ĉ override Ġval Ġdelimiter Ġ Ġ: ĠChar Ġ= ĠAuto Detect Delimiter , Ċ ĉ override Ġval Ġescape ĠĠĠĠ Ġ: ĠChar Ġ= Ġ'"' Ċ ) Ġ: ĠI Tab ular Stream Metadata Ċ { Ċ ĉ data Ġclass ĠColumn Names ( Ċĉ ĉ override Ġval Ġsymbol ĠĠĠ Ġ: ĠString , Ċĉ ĉ override Ġval Ġtime ĠĠĠĠĠ Ġ: ĠString , Ċĉ ĉ override Ġval Ġ Ġopen Price : ĠString , Ċĉ ĉ override Ġval Ġ Ġhigh Price : ĠString , Ċĉ ĉ override Ġval ĠĠ Ġlow Price : ĠString , Ċĉ ĉ override Ġval Ġclose Price : ĠString , Ċĉ ĉ override Ġval Ġvolume ĠĠĠ Ġ: ĠString Ċ ĉ ) Ġ: ĠI Column Names Ċ } Ċ Ċ object ĠStream Metadata Pre sets Ċ { Ċ ĉ const Ġval ĠAuto Detect Delimiter Ġ= ĠChar . MIN _ VALUE Ċ ĉ const Ġval ĠDisabled Escape ĠĠĠĠĠ Ġ= ĠChar . MIN _ VALUE ĊĉĊ ĉ // ĠTodo : ĠCrypto Data Download Ġhas Ġsome Ġin cons ist encies Ġthat Ġmake Ġit Ġvery Ġdifficult Ċ ĉ // Ġ Ġto Ġwrite Ġout Ġstatic Ġrules Ġfor Ġit . ĠThe ĠUnix Ġtimestamp Ġis Ġin Ġmilliseconds Ġin Ċ ĉ // Ġ Ġsome Ġdatasets , Ġseconds Ġin Ġothers ; Ġthe Ġcolumns Ġvary Ġfrom Ġtitle Ġcase Ġto Ġlower Ċ ĉ // Ġ Ġcase , Ġsometimes Ġeven Ġwithin Ġthe Ġsame Ġdataset ; Ġthe Ġvolume Ġcolumn Ġnames Ġoften Ċ ĉ // Ġ Ġhave Ġthe Ġsymbol Ġin Ġthem , Ġbut Ġnot Ġalways ; Ġand Ġthe Ġsymbol Ġformat Ġisn 't Ġconstant . Ċ ĉ // Ġ ĠThere 's Ġalso Ġa Ġsource ĠURL Ġat Ġthe Ġtop . ĠS uff ice Ġit Ġto Ġsay ĠI Ġdon 't Ġwant Ġto Ġdeal Ċ ĉ // Ġ Ġwith Ġthis Ġmess Ġright Ġnow . Ċ ĉ /* Ċ ĉ val ĠCrypto Data Download Ġget () Ġ= Ċĉ ĉ Tab ular Stream Metadata ( Ċĉĉ ĉ Column Names ( Ċĉĉĉ ĉ symbol Ġ= Ġ" Symbol ", Ċĉĉĉ ĉ time Ġ= Ġ" Unix ĠTimestamp ", Ċĉĉĉ ĉ open Price Ġ= Ġ" Open ", Ċĉĉĉ ĉ high Price Ġ= Ġ" High ", Ċĉĉĉ ĉ low Price Ġ= Ġ" Low ", Ċĉĉĉ ĉ close Price Ġ= Ġ" Close ", Ċĉĉĉ ĉ volume Ġ= Ġ" Volume ", Ċĉĉ ĉ ), Ċĉĉ ĉ time Format Ġ= ĠTime Format . Unix Epoch Milli , Ċĉĉ ĉ delimiter Ġ= Ġ', ', Ċĉĉ ĉ escape Ġ= ĠDisabled Escape Ċĉ ĉ ) Ċĉ Ġ*/ ĊĉĊ ĉ val ĠCrypto Tick Ġget () Ġ= Ċĉ ĉ Tab ular Stream Metadata ( Ċĉĉ ĉ Column Names ( Ċĉĉĉ ĉ symbol Ġ= Ġ" symbol _ id ", Ċĉĉĉ ĉ time Ġ= Ġ" time _ period _ start ", Ċĉĉĉ ĉ open Price Ġ= Ġ" px _ open ", Ċĉĉĉ ĉ high Price Ġ= Ġ" px _ high ", Ċĉĉĉ ĉ low Price Ġ= Ġ" px _ low ", Ċĉĉĉ ĉ close Price Ġ= Ġ" px _ close ", Ċĉĉĉ ĉ volume Ġ= Ġ" sx _ sum " Ċĉĉ ĉ ), Ċĉĉ ĉ time Format Ġ= ĠTime Format . Iso 8 6 0 1 LocalDateTime , Ċĉĉ ĉ delimiter Ġ= Ġ'; ', Ċĉĉ ĉ escape Ġ= ĠDisabled Escape Ċĉ ĉ ) Ċ } Ċ