@@ -1432,6 +1432,183 @@ public class Discovery {
14321432 }
14331433 }
14341434
1435+ /**
1436+ Get tokenization dictionary status.
1437+
1438+ Returns the current status of the tokenization dictionary for the specified collection.
1439+
1440+ - parameter environmentID: The ID of the environment.
1441+ - parameter collectionID: The ID of the collection.
1442+ - parameter headers: A dictionary of request headers to be sent with this request.
1443+ - parameter failure: A function executed if an error occurs.
1444+ - parameter success: A function executed with the successful result.
1445+ */
1446+ public func getTokenizationDictionaryStatus(
1447+ environmentID: String ,
1448+ collectionID: String ,
1449+ headers: [ String : String ] ? = nil ,
1450+ failure: ( ( Error ) -> Void ) ? = nil ,
1451+ success: @escaping ( TokenDictStatusResponse ) -> Void )
1452+ {
1453+ // construct header parameters
1454+ var headerParameters = defaultHeaders
1455+ if let headers = headers {
1456+ headerParameters. merge ( headers) { ( _, new) in new }
1457+ }
1458+ headerParameters [ " Accept " ] = " application/json "
1459+
1460+ // construct query parameters
1461+ var queryParameters = [ URLQueryItem] ( )
1462+ queryParameters. append ( URLQueryItem ( name: " version " , value: version) )
1463+
1464+ // construct REST request
1465+ let path = " /v1/environments/ \( environmentID) /collections/ \( collectionID) /word_lists/tokenization_dictionary "
1466+ guard let encodedPath = path. addingPercentEncoding ( withAllowedCharacters: . urlPathAllowed) else {
1467+ failure ? ( RestError . encodingError)
1468+ return
1469+ }
1470+ let request = RestRequest (
1471+ session: session,
1472+ authMethod: authMethod,
1473+ errorResponseDecoder: errorResponseDecoder,
1474+ method: " GET " ,
1475+ url: serviceURL + encodedPath,
1476+ headerParameters: headerParameters,
1477+ queryItems: queryParameters
1478+ )
1479+
1480+ // execute REST request
1481+ request. responseObject {
1482+ ( response: RestResponse < TokenDictStatusResponse > ) in
1483+ switch response. result {
1484+ case . success( let retval) : success ( retval)
1485+ case . failure( let error) : failure ? ( error)
1486+ }
1487+ }
1488+ }
1489+
1490+ /**
1491+ Create tokenization dictionary.
1492+
1493+ Upload a custom tokenization dictionary to use with the specified collection.
1494+
1495+ - parameter environmentID: The ID of the environment.
1496+ - parameter collectionID: The ID of the collection.
1497+ - parameter tokenizationRules: An array of tokenization rules. Each rule contains, the original `text` string,
1498+ component `tokens`, any alternate character set `readings`, and which `part_of_speech` the text is from.
1499+ - parameter headers: A dictionary of request headers to be sent with this request.
1500+ - parameter failure: A function executed if an error occurs.
1501+ - parameter success: A function executed with the successful result.
1502+ */
1503+ public func createTokenizationDictionary(
1504+ environmentID: String ,
1505+ collectionID: String ,
1506+ tokenizationRules: [ TokenDictRule ] ? = nil ,
1507+ headers: [ String : String ] ? = nil ,
1508+ failure: ( ( Error ) -> Void ) ? = nil ,
1509+ success: @escaping ( TokenDictStatusResponse ) -> Void )
1510+ {
1511+ // construct body
1512+ let createTokenizationDictionaryRequest = TokenDict ( tokenizationRules: tokenizationRules)
1513+ guard let body = try ? JSONEncoder ( ) . encodeIfPresent ( createTokenizationDictionaryRequest) else {
1514+ failure ? ( RestError . serializationError)
1515+ return
1516+ }
1517+
1518+ // construct header parameters
1519+ var headerParameters = defaultHeaders
1520+ if let headers = headers {
1521+ headerParameters. merge ( headers) { ( _, new) in new }
1522+ }
1523+ headerParameters [ " Accept " ] = " application/json "
1524+ headerParameters [ " Content-Type " ] = " application/json "
1525+
1526+ // construct query parameters
1527+ var queryParameters = [ URLQueryItem] ( )
1528+ queryParameters. append ( URLQueryItem ( name: " version " , value: version) )
1529+
1530+ // construct REST request
1531+ let path = " /v1/environments/ \( environmentID) /collections/ \( collectionID) /word_lists/tokenization_dictionary "
1532+ guard let encodedPath = path. addingPercentEncoding ( withAllowedCharacters: . urlPathAllowed) else {
1533+ failure ? ( RestError . encodingError)
1534+ return
1535+ }
1536+ let request = RestRequest (
1537+ session: session,
1538+ authMethod: authMethod,
1539+ errorResponseDecoder: errorResponseDecoder,
1540+ method: " POST " ,
1541+ url: serviceURL + encodedPath,
1542+ headerParameters: headerParameters,
1543+ queryItems: queryParameters,
1544+ messageBody: body
1545+ )
1546+
1547+ // execute REST request
1548+ request. responseObject {
1549+ ( response: RestResponse < TokenDictStatusResponse > ) in
1550+ switch response. result {
1551+ case . success( let retval) : success ( retval)
1552+ case . failure( let error) : failure ? ( error)
1553+ }
1554+ }
1555+ }
1556+
1557+ /**
1558+ Delete tokenization dictionary.
1559+
1560+ Delete the tokenization dictionary from the collection.
1561+
1562+ - parameter environmentID: The ID of the environment.
1563+ - parameter collectionID: The ID of the collection.
1564+ - parameter headers: A dictionary of request headers to be sent with this request.
1565+ - parameter failure: A function executed if an error occurs.
1566+ - parameter success: A function executed with the successful result.
1567+ */
1568+ public func deleteTokenizationDictionary(
1569+ environmentID: String ,
1570+ collectionID: String ,
1571+ headers: [ String : String ] ? = nil ,
1572+ failure: ( ( Error ) -> Void ) ? = nil ,
1573+ success: @escaping ( ) -> Void )
1574+ {
1575+ // construct header parameters
1576+ var headerParameters = defaultHeaders
1577+ if let headers = headers {
1578+ headerParameters. merge ( headers) { ( _, new) in new }
1579+ }
1580+ headerParameters [ " Accept " ] = " application/json "
1581+
1582+ // construct query parameters
1583+ var queryParameters = [ URLQueryItem] ( )
1584+ queryParameters. append ( URLQueryItem ( name: " version " , value: version) )
1585+
1586+ // construct REST request
1587+ let path = " /v1/environments/ \( environmentID) /collections/ \( collectionID) /word_lists/tokenization_dictionary "
1588+ guard let encodedPath = path. addingPercentEncoding ( withAllowedCharacters: . urlPathAllowed) else {
1589+ failure ? ( RestError . encodingError)
1590+ return
1591+ }
1592+ let request = RestRequest (
1593+ session: session,
1594+ authMethod: authMethod,
1595+ errorResponseDecoder: errorResponseDecoder,
1596+ method: " DELETE " ,
1597+ url: serviceURL + encodedPath,
1598+ headerParameters: headerParameters,
1599+ queryItems: queryParameters
1600+ )
1601+
1602+ // execute REST request
1603+ request. responseVoid {
1604+ ( response: RestResponse ) in
1605+ switch response. result {
1606+ case . success: success ( )
1607+ case . failure( let error) : failure ? ( error)
1608+ }
1609+ }
1610+ }
1611+
14351612 /**
14361613 Add a document.
14371614
0 commit comments