From 50a0e9efcb1547a13b3687c93809859df9d04c82 Mon Sep 17 00:00:00 2001 From: Alan Hamlett Date: Wed, 24 Dec 2014 23:22:40 -0600 Subject: [PATCH] parse dependencies from data files --- wakatime/languages/data.py | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 wakatime/languages/data.py diff --git a/wakatime/languages/data.py b/wakatime/languages/data.py new file mode 100644 index 0000000..8df5017 --- /dev/null +++ b/wakatime/languages/data.py @@ -0,0 +1,32 @@ +# -*- coding: utf-8 -*- +""" + wakatime.languages.data + ~~~~~~~~~~~~~~~~~~~~~~~ + + Parse dependencies from data files. + + :copyright: (c) 2014 Alan Hamlett. + :license: BSD, see LICENSE for more details. +""" + +import os + +from . import TokenParser + + +FILES = { + 'bower': {'exact': False, 'dependency': 'bower'}, +} + + +class JsonParser(TokenParser): + + def parse(self, tokens=[]): + self._process_file_name(os.path.basename(self.source_file)) + return self.dependencies + + def _process_file_name(self, file_name): + for key, value in FILES.items(): + found = (key == file_name) if value.get('exact') else (key in file_name) + if found: + self.append(value['dependency'])