summaryrefslogtreecommitdiff
path: root/tablib/core.py
diff options
context:
space:
mode:
Diffstat (limited to 'tablib/core.py')
-rw-r--r--tablib/core.py44
1 files changed, 19 insertions, 25 deletions
diff --git a/tablib/core.py b/tablib/core.py
index 730f673..0167c34 100644
--- a/tablib/core.py
+++ b/tablib/core.py
@@ -8,7 +8,7 @@
import csv
-import StringIO
+import cStringIO
import random
import simplejson as json
@@ -21,8 +21,8 @@ from helpers import *
# __all__ = ['Dataset', 'DataBook']
__name__ = 'tablib'
-__version__ = '0.7.0'
-__build__ = 0x000700
+__version__ = '0.7.1'
+__build__ = 0x000701
__author__ = 'Kenneth Reitz'
__license__ = 'MIT'
__copyright__ = 'Copyright 2010 Kenneth Reitz'
@@ -155,19 +155,20 @@ class Dataset(object):
return self._package()
+ @property
def json(self):
"""Returns JSON representation of Dataset."""
return json.dumps(self.dict)
-
+ @property
def yaml(self):
"""Returns YAML representation of Dataset."""
return yaml.dump(self.dict)
-
+ @property
def csv(self):
"""Returns CSV representation of Dataset."""
- stream = StringIO.StringIO()
+ stream = cStringIO.StringIO()
_csv = csv.writer(stream)
for row in self._package(dicts=False):
@@ -175,8 +176,8 @@ class Dataset(object):
return stream.getvalue()
-
- def xls(self, path=None):
+ @property
+ def xls(self):
"""Returns XLS representation of Dataset."""
wb = xlwt.Workbook(encoding='utf8')
@@ -186,13 +187,9 @@ class Dataset(object):
for j, col in enumerate(row):
ws.write(i, j, col)
- if path:
- wb.save(path)
- return True
- else:
- stream = StringIO.StringIO()
- wb.save(stream)
- return stream.getvalue()
+ stream = cStringIO.StringIO()
+ wb.save(stream)
+ return stream.getvalue()
def append(self, row=None, col=None):
@@ -266,8 +263,8 @@ class Databook(object):
"""The number of the Datasets within DataBook."""
return len(self._datasets)
-
- def xls(self, path=None):
+ @property
+ def xls(self):
"""Returns XLS representation of DataBook."""
@@ -282,22 +279,19 @@ class Databook(object):
ws.write(i, j, col)
-
- if path:
- wb.save(path)
- return True
- else:
- stream = cStringIO.StringIO()
- wb.save(stream)
- return stream.getvalue()
+ stream = cStringIO.StringIO()
+ wb.save(stream)
+ return stream.getvalue()
+ @property
def json(self):
"""Returns JSON representation of Databook."""
return json.dumps(self._package())
+ @property
def yaml(self):
"""Returns YAML representation of Databook."""