/** * Writes a Persona to XML. * * @param writer The XML writer. * @param _persona The Persona to write. * @return The total bytes written, or -1 on error; */ static int xmlTextWriterWritePersonaPersonaType(xmlTextWriterPtr writer, struct ifyouwannabecool_persona_persona *_persona) { int status, totalBytes = 0, i; xmlChar *binaryData; if (_persona->id != NULL) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "id", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}id. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}id...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, (_persona->id)); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}id. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}id. status: %i\n", status); #endif return status; } totalBytes += status; } if (_persona->email != NULL) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "email", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}email. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}email...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, (_persona->email)); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}email. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}email. status: %i\n", status); #endif return status; } totalBytes += status; } if (_persona->alias != NULL) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "alias", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}alias. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}alias...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, (_persona->alias)); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}alias. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}alias. status: %i\n", status); #endif return status; } totalBytes += status; } if (_persona->name != NULL) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "name", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}name. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://api.ifyouwannabecool.com/persona}name for element {}name...\n"); #endif status = xmlTextWriterWritePersonaNameType(writer, (_persona->name)); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://api.ifyouwannabecool.com/persona}name for element {}name. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}name. status: %i\n", status); #endif return status; } totalBytes += status; } if (_persona->picture != NULL) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "picture", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}picture. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing binary data for element {}picture...\n"); #endif binaryData = _encode_base64(_persona->picture, _persona->_sizeof_picture); status = xmlTextWriterWriteString(writer, binaryData); free(binaryData); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write binary data for element {}picture. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}picture. status: %i\n", status); #endif return status; } totalBytes += status; } return totalBytes; }
/** * Writes a NetworkCapabilities to XML. * * @param writer The XML writer. * @param _networkCapabilities The NetworkCapabilities to write. * @return The total bytes written, or -1 on error; */ static int xmlTextWriterWriteNs0NetworkCapabilitiesType(xmlTextWriterPtr writer, struct full_ns0_networkCapabilities *_networkCapabilities) { int status, totalBytes = 0, i; xmlChar *binaryData; for (i = 0; i < _networkCapabilities->_sizeof_node; i++) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "node", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}node. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}node...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, &(_networkCapabilities->node[i])); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}node. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}node. status: %i\n", status); #endif return status; } totalBytes += status; } for (i = 0; i < _networkCapabilities->_sizeof_latency; i++) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "latency", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}latency. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}latency...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, &(_networkCapabilities->latency[i])); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}latency. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}latency. status: %i\n", status); #endif return status; } totalBytes += status; } for (i = 0; i < _networkCapabilities->_sizeof_macAddressList; i++) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "macAddressList", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}macAddressList. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}macAddressList...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, &(_networkCapabilities->macAddressList[i])); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}macAddressList. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}macAddressList. status: %i\n", status); #endif return status; } totalBytes += status; } for (i = 0; i < _networkCapabilities->_sizeof_bandwidth; i++) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "bandwidth", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}bandwidth. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}bandwidth...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, &(_networkCapabilities->bandwidth[i])); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}bandwidth. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}bandwidth. status: %i\n", status); #endif return status; } totalBytes += status; } for (i = 0; i < _networkCapabilities->_sizeof_link; i++) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "link", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}link. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}link...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, &(_networkCapabilities->link[i])); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}link. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}link. status: %i\n", status); #endif return status; } totalBytes += status; } for (i = 0; i < _networkCapabilities->_sizeof_controller; i++) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "controller", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}controller. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}controller...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, &(_networkCapabilities->controller[i])); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}controller. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}controller. status: %i\n", status); #endif return status; } totalBytes += status; } for (i = 0; i < _networkCapabilities->_sizeof_host; i++) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "host", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}host. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}host...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, &(_networkCapabilities->host[i])); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}host. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}host. status: %i\n", status); #endif return status; } totalBytes += status; } for (i = 0; i < _networkCapabilities->_sizeof_ipAddressList; i++) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "ipAddressList", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}ipAddressList. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}ipAddressList...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, &(_networkCapabilities->ipAddressList[i])); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}ipAddressList. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}ipAddressList. status: %i\n", status); #endif return status; } totalBytes += status; } return totalBytes; }
/** * Writes a Name to XML. * * @param writer The XML writer. * @param _name The Name to write. * @return The total bytes written, or -1 on error; */ static int xmlTextWriterWritePersonaNameType(xmlTextWriterPtr writer, struct ifyouwannabecool_persona_name *_name) { int status, totalBytes = 0, i; xmlChar *binaryData; if (_name->givenName != NULL) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "givenName", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}givenName. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}givenName...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, (_name->givenName)); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}givenName. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}givenName. status: %i\n", status); #endif return status; } totalBytes += status; } if (_name->surname != NULL) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "surname", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}surname. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}surname...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, (_name->surname)); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}surname. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}surname. status: %i\n", status); #endif return status; } totalBytes += status; } return totalBytes; }
/** * Writes a SocialGroup to XML. * * @param writer The XML writer. * @param _socialGroup The SocialGroup to write. * @return The total bytes written, or -1 on error; */ static int xmlTextWriterWriteLinkSocialGroupType(xmlTextWriterPtr writer, struct ifyouwannabecool_link_socialGroup *_socialGroup) { int status, totalBytes = 0, i; xmlChar *binaryData; if (_socialGroup->id != NULL) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "id", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}id. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}id...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, (_socialGroup->id)); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}id. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}id. status: %i\n", status); #endif return status; } totalBytes += status; } for (i = 0; i < _socialGroup->_sizeof_memberIds; i++) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "memberIds", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}memberIds. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}memberIds...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, &(_socialGroup->memberIds[i])); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}memberIds. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}memberIds. status: %i\n", status); #endif return status; } totalBytes += status; } if (_socialGroup->groupLeaderId != NULL) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "groupLeaderId", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}groupLeaderId. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}groupLeaderId...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, (_socialGroup->groupLeaderId)); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}groupLeaderId. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}groupLeaderId. status: %i\n", status); #endif return status; } totalBytes += status; } if (1) { //always write the primitive element. status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "exclusive", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}exclusive. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}boolean for element {}exclusive...\n"); #endif status = xmlTextWriterWriteXsBooleanType(writer, &(_socialGroup->exclusive)); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}boolean for element {}exclusive. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}exclusive. status: %i\n", status); #endif return status; } totalBytes += status; } return totalBytes; }
/** * Writes a SubnetConfig to XML. * * @param writer The XML writer. * @param _subnetConfig The SubnetConfig to write. * @return The total bytes written, or -1 on error; */ static int xmlTextWriterWriteNs0SubnetConfigType(xmlTextWriterPtr writer, struct full_ns0_subnetConfig *_subnetConfig) { int status, totalBytes = 0, i; xmlChar *binaryData; if (_subnetConfig->subnet != NULL) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "subnet", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}subnet. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}subnet...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, (_subnetConfig->subnet)); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}subnet. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}subnet. status: %i\n", status); #endif return status; } totalBytes += status; } if (_subnetConfig->name != NULL) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "name", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}name. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}name...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, (_subnetConfig->name)); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}name. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}name. status: %i\n", status); #endif return status; } totalBytes += status; } for (i = 0; i < _subnetConfig->_sizeof_nodeConnectors; i++) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "nodeConnectors", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}nodeConnectors. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}nodeConnectors...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, &(_subnetConfig->nodeConnectors[i])); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}nodeConnectors. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}nodeConnectors. status: %i\n", status); #endif return status; } totalBytes += status; } return totalBytes; }
/** * Writes a UserConfig to XML. * * @param writer The XML writer. * @param _userConfig The UserConfig to write. * @return The total bytes written, or -1 on error; */ static int xmlTextWriterWriteNs0UserConfigType(xmlTextWriterPtr writer, struct full_ns0_userConfig *_userConfig) { int status, totalBytes = 0, i; xmlChar *binaryData; if (_userConfig->user != NULL) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "user", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}user. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}user...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, (_userConfig->user)); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}user. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}user. status: %i\n", status); #endif return status; } totalBytes += status; } for (i = 0; i < _userConfig->_sizeof_roles; i++) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "roles", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}roles. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}roles...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, &(_userConfig->roles[i])); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}roles. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}roles. status: %i\n", status); #endif return status; } totalBytes += status; } if (_userConfig->password != NULL) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "password", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}password. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}password...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, (_userConfig->password)); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}password. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}password. status: %i\n", status); #endif return status; } totalBytes += status; } return totalBytes; }
/** * Writes a Node to XML. * * @param writer The XML writer. * @param _node The Node to write. * @return The total bytes written, or -1 on error; */ static int xmlTextWriterWriteNs0NodeType(xmlTextWriterPtr writer, struct full_ns0_node *_node) { int status, totalBytes = 0, i; xmlChar *binaryData; if (_node->nodeIDString != NULL) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "id", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}id. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}id...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, (_node->nodeIDString)); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}id. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}id. status: %i\n", status); #endif return status; } totalBytes += status; } if (_node->type != NULL) { status = xmlTextWriterStartElementNS(writer, NULL, BAD_CAST "type", NULL); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write start element {}type. status: %i\n", status); #endif return status; } totalBytes += status; #if DEBUG_ENUNCIATE > 1 printf("writing type {http://www.w3.org/2001/XMLSchema}string for element {}type...\n"); #endif status = xmlTextWriterWriteXsStringType(writer, (_node->type)); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write type {http://www.w3.org/2001/XMLSchema}string for element {}type. status: %i\n", status); #endif return status; } totalBytes += status; status = xmlTextWriterEndElement(writer); if (status < 0) { #if DEBUG_ENUNCIATE printf("Failed to write end element {}type. status: %i\n", status); #endif return status; } totalBytes += status; } return totalBytes; }