1 #include "StringType.h"
\r
8 namespace Databoard {
\r
11 StringType::StringType()
\r
13 this->length = NULL;
\r
16 StringType::StringType(std::string pattern)
\r
18 this->pattern = pattern;
\r
19 this->length = NULL;
\r
22 StringType::StringType(std::string pattern, std::string mimeType, Range* length)
\r
24 this->pattern = pattern;
\r
25 this->mimeType = mimeType;
\r
26 this->length = length;
\r
29 StringType::~StringType()
\r
37 std::string StringType::getPattern()
\r
42 void StringType::setPattern(std::string pattern)
\r
44 this->pattern = pattern;
\r
47 std::string StringType::getMimeType()
\r
52 void StringType::setMimeType(std::string mimeType)
\r
54 this->mimeType = mimeType;
\r
57 Range* StringType::getLength()
\r
62 void StringType::setLength(Range* length)
\r
64 this->length = length;
\r
67 int StringType::minLength()
\r
69 if(length == NULL) return 0;
\r
71 return length->getLower()->getInteger(INT_MAX);
\r
74 int StringType::maxLength()
\r
76 if(length == NULL) return INT_MAX;
\r
78 return length->getUpper()->getInteger(INT_MIN);
\r
81 std::string StringType::writeOut(int /*indent*/)
\r
87 bool parenthesis = false;
\r
89 if(mimeType.size() > 0)
\r
91 s += "(mimeType=\"" + mimeType + "\"";
\r
96 if(pattern.size() > 0)
\r
98 if(parenthesis == false)
\r
107 s += "pattern=\"" + pattern + "\"";
\r
109 parenthesis = true;
\r
112 if(parenthesis == true)
\r