Пример #1
0
void ScriptNode::outputContext(ostream &printStream, const char *indentString) 
{
	SFBool *directOutput = getDirectOutputField();
	SFBool *mustEvaluate = getMustEvaluateField();

	printStream << indentString << "\t" << "directOutput " << directOutput << endl;
	printStream << indentString << "\t" << "mustEvaluate " << mustEvaluate << endl;

	if (0 < getNUrls()) {
		MFString *url = getUrlField();
		printStream << indentString << "\t" << "url [" << endl;
		url->MField::outputContext(printStream, indentString, "\t\t");
		printStream << indentString << "\t" << "]" << endl;
	}
		
	int	n;

	for (n=0; n<getNEventIn(); n++) {
		Field *field = getEventIn(n);
		printStream << indentString << "\t" << "eventIn " << field->getTypeName() << " " << ((field->getName() && strlen(field->getName())) ? field->getName() : "NONE") << endl;
	}

	for (n=0; n<getNFields(); n++) {
		Field *field = getField(n);
		String fieldName(field->getName());
		if (fieldName.compareTo(directOutputFieldString) != 0 && fieldName.compareTo(mustEvaluateFieldString) != 0) {
			if (field->getType() == fieldTypeSFNode) {
				Node	*node = ((SFNode *)field)->getValue();
				const char	*nodeName = NULL;
				if (node)
					nodeName = node->getName();
				if (nodeName && strlen(nodeName))
					printStream << indentString << "\t" << "field " << "SFNode" << " " << ((field->getName() && strlen(field->getName())) ? field->getName() : "NONE") << " USE " << nodeName << endl;
				else
					printStream << indentString << "\t" << "field " << "SFNode" << " " << ((field->getName() && strlen(field->getName())) ? field->getName() : "NONE") << " NULL" << endl;
			}
			else
				printStream << indentString << "\t" << "field " << field->getTypeName() << " " << ((field->getName() && strlen(field->getName())) ? field->getName() : "NONE") << " " << field << endl;
		}
	}

	for (n=0; n<getNEventOut(); n++) {
		Field *field = getEventOut(n);
		printStream << indentString << "\t" << "eventOut " << field->getTypeName() << " " << ((field->getName() && strlen(field->getName())) ? field->getName() : "NONE") << endl;
	}
}
Пример #2
0
void AnchorNode::outputContext(ostream &printStream, const char *indentString) 
{
	SFString *description = getDescriptionField();
	printStream << indentString << "\t" << "description " << description << endl;
	
	if (0 < getNParameters()) {
		MFString *parameter = getParameterField();
		printStream << indentString << "\t" << "parameter ["  << endl;
		parameter->MField::outputContext(printStream, indentString, "\t\t");
		printStream << indentString << "\t" << "]" << endl;
	}

	if (0 < getNUrls()) {
		MFString *url = getUrlField();
		printStream << indentString << "\t" << "url [" << endl;
		url->MField::outputContext(printStream, indentString, "\t\t");
		printStream << indentString << "\t" << "]" << endl;
	}
}
Пример #3
0
int MUrl::parse()
{
    http_parser_url hpu;
    if (http_parser_parse_url(m_url.c_str(), m_url.length(), 0, &hpu) != 0) {
        return -1;
    }

    m_scheme    = getUrlField(m_url, UF_SCHEMA, hpu);
    m_host      = getUrlField(m_url, UF_HOST, hpu);
    m_port      = getUrlField(m_url, UF_PORT, hpu).toShort();
    m_path      = getUrlField(m_url, UF_PATH, hpu);
    m_query     = getUrlField(m_url, UF_QUERY, hpu);
    m_fragment  = getUrlField(m_url, UF_FRAGMENT, hpu);

    if (hasQuery()) {
        parseQuery();
    }

    return 0;
}
Пример #4
0
void ScriptNode::setUrl(int index, const char *urlString) 
{
	getUrlField()->set1Value(index, urlString);
}
Пример #5
0
const char *ScriptNode::getUrl(int index) 
{
	return getUrlField()->get1Value(index);
}
Пример #6
0
int ScriptNode::getNUrls() 
{
	return getUrlField()->getSize();
}
Пример #7
0
void ScriptNode::addUrl(const char * value) 
{
	getUrlField()->addValue(value);
}
Пример #8
0
void AnchorNode::addUrl(const char *value) 
{
	getUrlField()->addValue(value);
}
Пример #9
0
const char *AnchorNode::getUrl(int index) 
{
	return getUrlField()->get1Value(index);
}
Пример #10
0
int AnchorNode::getNUrls() 
{
	return getUrlField()->getSize();
}