Hi Ruwan,

SCIM uses a different kind of query syntax than FIQL. Hence IMO we need to
> stick to SCIM like query syntax.
>

+1. I have changed the API to use Open Data Protocol based filter query[1]
which is SCIM like.

[1]
https://cwiki.apache.org/confluence/display/CXF20DOC/JAX-RS+Search#JAX-RSSearch-OpenDataProtocol


Thanks,
Tharindu.

On Tue, Dec 11, 2018 at 7:24 AM Ruwan Abeykoon <[email protected]> wrote:

> Hi Folks,
> We need to stick to one type of query syntax.
> SCIM uses a different kind of query syntax than FIQL. Hence IMO we need to
> stick to SCIM like query syntax.
>
> Cheers,
> Ruwan
>
>
> On Mon, Dec 10, 2018 at 9:59 AM Tharindu Bandara <[email protected]>
> wrote:
>
>> Hi all,
>>
>> I have refactored the API to include a search endpoint and on endpoint
>> naming. Please find the refactored REST API[1].
>>
>> For the implementation, I am using Apache CXF framework. Therefore for
>> the HTTP GET operations, endpoints are enabled with Feed Item Query
>> Language(FIQL) based search query support in Apache CXF[2]. This will be
>> used to support complex query based search with the endpoints.
>>
>> [1]
>> https://app.swaggerhub.com/apis-docs/WSO8/wso-2_identity_server_configuration_management_rest_api/1.0.0#/
>> [2]
>> https://cwiki.apache.org/confluence/display/CXF20DOC/JAX-RS+Search#JAX-RSSearch-FeedItemQueryLanguage
>>
>> Thanks,
>> Tharindu.
>>
>> On Wed, Dec 5, 2018 at 4:44 PM Tharindu Bandara <[email protected]>
>> wrote:
>>
>>> Hi all,
>>>
>>> The database schema for the $subject is prepared and refactored with the
>>> review meeting[1] suggestions. Please find the corresponding DB schema
>>> architecture from the architecture mail thread[2].
>>>
>>> Based on the database schema, configuration store REST API is changed to
>>> include the required changes.
>>>
>>> Please find the refactored REST API[3].
>>>
>>> HTTP GET method for the “resource” and the “resource/{name}” endpoints
>>> support searching based on query parameter filters. These search filter
>>> parameters used in the GET method accept multiple values. For an
>>> example let’s look at the tenant query parameter. This parameter can be a
>>> list, containing multiple tenant domain values. This list parameter is used
>>> in the URL in the following manner.
>>>
>>> Ex:
>>>
>>> Parameter value would be, tenant=[adc.com, wso2.com]. In the HTTP GET
>>> request URL, this parameter will be passed as a repeating tenant parameter
>>> with multiple values.
>>>
>>>
>>> https://localhost:9443/api/identity/config-mgt/v1.0/configuration/email?tenant=wso2.com&tenant=abc.com.
>>> From the JAX-RS service, this repeating parameter will be collected into a
>>> List.
>>>
>>> Please add your valuable suggestions on this.
>>>
>>> [1] [1] "Invitation: [IAM][Review]JDBC Based Configuration Store @ Mon
>>> Dec 3, 2018 1pm - 2pm (IST) (WSO2 Engineering Group)"
>>>
>>> [2] [Architecture][IAM][JDBC based Configuration Store] Database Schema
>>>
>>> [3]
>>> https://app.swaggerhub.com/apis-docs/WSO8/wso-2_identity_server_configuration_management_rest_api/1.0.0
>>>
>>> Thanks,
>>>
>>> Tharindu.
>>>
>>> On Wed, Dec 5, 2018 at 1:53 PM Isura Karunaratne <[email protected]> wrote:
>>>
>>>> Hi Chamila,
>>>>
>>>> On Tue, Dec 4, 2018 at 10:38 AM Chamila De Alwis <[email protected]>
>>>> wrote:
>>>>
>>>>> Hi Tharindu, IS team,
>>>>>
>>>>> A quick clarification. Is this related to storing product
>>>>> configuration in a DBMS or are these only the configurations created at
>>>>> runtime? If it is the former, is this going to (gradually?) replace the 
>>>>> XML
>>>>> config files?
>>>>>
>>>>> This is not a replacement for xml config files. Main objective is to
>>>> store tenant wise configurations at runtime.
>>>>
>>>> Cheers,
>>>> Isura.
>>>>
>>>>>
>>>>> *Chamila de Alwis* | Associate Technical Lead | WSO2 Inc.
>>>>> (m) +94 77 220 7163 | (e) [email protected]
>>>>> [image: Get Integration Agile] <https://wso2.com/signature>
>>>>>
>>>>>
>>>>>
>>>>> On Wed, Oct 17, 2018 at 12:11 PM Tharindu Bandara <[email protected]>
>>>>> wrote:
>>>>>
>>>>>> Hi Farasath,
>>>>>>
>>>>>> The current plan is to manage email configurations per tenant.
>>>>>>
>>>>>> In the future, we can move similar tenant wise configurations to
>>>>>> here. A few examples would be email templates, challenge questions, 
>>>>>> issuer
>>>>>> details.
>>>>>>
>>>>>> Thanks,
>>>>>> Tharindu.
>>>>>>
>>>>>> On Wed, Oct 17, 2018 at 11:53 AM Farasath Ahamed <[email protected]>
>>>>>> wrote:
>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Wed, Oct 17, 2018 at 10:36 AM Tharindu Bandara <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> Hi all,
>>>>>>>>
>>>>>>>> I have been working on the $subject as WSO2 IS need a common place
>>>>>>>> to store configurations.
>>>>>>>>
>>>>>>>
>>>>>>> Can you give some examples for the types of configurations we plan
>>>>>>> to manage with this endpoint?
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> Above diagramme is a high-level, modularized view of $subject
>>>>>>>> approach.
>>>>>>>>
>>>>>>>> I am working on the Configuration Management Endpoint. Below
>>>>>>>> include the REST API for this.
>>>>>>>>
>>>>>>>> Name : WSO2 Identity Server Configuration Management Rest API
>>>>>>>>
>>>>>>>> Base URL : {tenant-domain}/api/identity/config-mgt/v1.0
>>>>>>>>
>>>>>>>> URL
>>>>>>>>
>>>>>>>> Method
>>>>>>>>
>>>>>>>> Body
>>>>>>>>
>>>>>>>> Description
>>>>>>>>
>>>>>>>> /configuration
>>>>>>>>
>>>>>>>> POST
>>>>>>>>
>>>>>>>> Tenant Configurations object
>>>>>>>>
>>>>>>>> Add configurations
>>>>>>>>
>>>>>>>> PUT
>>>>>>>>
>>>>>>>> Tenant Configurations object
>>>>>>>>
>>>>>>>> Add or Replace configurations
>>>>>>>>
>>>>>>>> PATCH
>>>>>>>>
>>>>>>>> Tenant Configurations object
>>>>>>>>
>>>>>>>> Update existing configurations
>>>>>>>>
>>>>>>>> GET
>>>>>>>>
>>>>>>>> -
>>>>>>>>
>>>>>>>> Retrieve configurations
>>>>>>>>
>>>>>>>> DELETE
>>>>>>>>
>>>>>>>> -
>>>>>>>>
>>>>>>>> Revoke configurations
>>>>>>>>
>>>>>>>> /configuration/{key}
>>>>>>>>
>>>>>>>> POST
>>>>>>>>
>>>>>>>> Configuration object
>>>>>>>>
>>>>>>>> Add the configuration
>>>>>>>>
>>>>>>>> PUT
>>>>>>>>
>>>>>>>> Configuration object
>>>>>>>>
>>>>>>>> Add or Replace the configuration
>>>>>>>>
>>>>>>>> PATCH
>>>>>>>>
>>>>>>>> Configuration object
>>>>>>>>
>>>>>>>> Update existing configuration
>>>>>>>>
>>>>>>>> GET
>>>>>>>>
>>>>>>>> -
>>>>>>>>
>>>>>>>> Retrieve the configuration
>>>>>>>>
>>>>>>>> DELETE
>>>>>>>>
>>>>>>>> -
>>>>>>>>
>>>>>>>> Revoke the configuration
>>>>>>>>
>>>>>>>> A path parameter named ‘key’ is used to identify a configuration.
>>>>>>>>
>>>>>>>> Path Parameter
>>>>>>>>
>>>>>>>> Description
>>>>>>>>
>>>>>>>> {key}
>>>>>>>>
>>>>>>>> Key of the configuration
>>>>>>>>
>>>>>>>> Two types of data objects are used for above REST API calls.
>>>>>>>>
>>>>>>>> Data object
>>>>>>>>
>>>>>>>> Model
>>>>>>>>
>>>>>>>> Tenant Configurations object
>>>>>>>>
>>>>>>>> Configuration object
>>>>>>>>
>>>>>>>>
>>>>>>>> Let’s have a look at an example POST request to add the “email
>>>>>>>> configuration” using WSO2 Identity Server Configuration Management 
>>>>>>>> Rest API.
>>>>>>>>
>>>>>>>> Method
>>>>>>>>
>>>>>>>> POST
>>>>>>>>
>>>>>>>> URL
>>>>>>>>
>>>>>>>> /api/identity/config-mgt/v1.0/configuration/email
>>>>>>>>
>>>>>>>> Body
>>>>>>>>
>>>>>>>>
>>>>>>>> Please refer to the detailed REST API documentation for in-depth
>>>>>>>> information[1]
>>>>>>>> <https://app.swaggerhub.com/apis-docs/WSO8/wso-2_identity_server_configuration_management_rest_api/1.0.0>
>>>>>>>> .
>>>>>>>>
>>>>>>>> Please note that naming in the API is not finalized yet.
>>>>>>>>
>>>>>>>> Your valuable comments and suggestions are highly appreciated.
>>>>>>>>
>>>>>>>>
>>>>>>>> [1]
>>>>>>>> https://app.swaggerhub.com/apis-docs/WSO8/wso-2_identity_server_configuration_management_rest_api/1.0.0
>>>>>>>> <https://app.swaggerhub.com/apis-docs/WSO8/wso-2_identity_server_configuration_management_rest_api/1.0.0#/>
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>>
>>>>>>>> Tharindu.
>>>>>>>> --
>>>>>>>> *Tharindu Bandara*
>>>>>>>> Software Engineer | WSO2
>>>>>>>>
>>>>>>>> Email : [email protected]
>>>>>>>> Mobile : +94 714221776
>>>>>>>> web : http://wso2.com
>>>>>>>> <https://www.google.com/url?q=http://wso2.com&sa=D&ust=1517653383990000&usg=AFQjCNFggB4bSJTKmdqKcBV0VY9xx1ABKg>
>>>>>>>>
>>>>>>>> https://wso2.com/signature
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Farasath Ahamed
>>>>>>> Senior Software Engineer, WSO2 Inc.; http://wso2.com
>>>>>>> Mobile: +94777603866
>>>>>>> Blog: blog.farazath.com
>>>>>>> Twitter: @farazath619 <https://twitter.com/farazath619>
>>>>>>> <http://wso2.com/signature>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> --
>>>>>> *Tharindu Bandara*
>>>>>> Software Engineer | WSO2
>>>>>>
>>>>>> Email : [email protected]
>>>>>> Mobile : +94 714221776
>>>>>> web : http://wso2.com
>>>>>> <https://www.google.com/url?q=http://wso2.com&sa=D&ust=1517653383990000&usg=AFQjCNFggB4bSJTKmdqKcBV0VY9xx1ABKg>
>>>>>>
>>>>>> https://wso2.com/signature
>>>>>>
>>>>>
>>>>
>>>> --
>>>>
>>>> *Isura Dilhara Karunaratne*
>>>> Associate Technical Lead | WSO2 <http://wso2.com/>
>>>> *lean.enterprise.middleware*
>>>> Email: [email protected]
>>>> Mob : +94 772 254 810
>>>> Blog : http://isurad.blogspot.com/
>>>>
>>>>
>>>>
>>>>
>>>
>>> --
>>> *Tharindu Bandara*
>>> Software Engineer | WSO2
>>>
>>> Email : [email protected]
>>> Mobile : +94 714221776
>>> web : http://wso2.com
>>> <https://www.google.com/url?q=http://wso2.com&sa=D&ust=1517653383990000&usg=AFQjCNFggB4bSJTKmdqKcBV0VY9xx1ABKg>
>>>
>>> https://wso2.com/signature
>>>
>>
>>
>> --
>> *Tharindu Bandara*
>> Software Engineer | WSO2
>>
>> Email : [email protected]
>> Mobile : +94 714221776
>> web : http://wso2.com
>> <https://www.google.com/url?q=http://wso2.com&sa=D&ust=1517653383990000&usg=AFQjCNFggB4bSJTKmdqKcBV0VY9xx1ABKg>
>>
>> https://wso2.com/signature
>>
>
>
> --
>
> *Ruwan Abeykoon*
> *Associate Director/Architect**,*
> *WSO2, Inc. http://wso2.com <https://wso2.com/signature> *
> *lean.enterprise.middleware.*
>
>

-- 
*Tharindu Bandara*
Software Engineer | WSO2

Email : [email protected]
Mobile : +94 714221776
web : http://wso2.com
<https://www.google.com/url?q=http://wso2.com&sa=D&ust=1517653383990000&usg=AFQjCNFggB4bSJTKmdqKcBV0VY9xx1ABKg>

https://wso2.com/signature
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to