This is an automated email from the ASF dual-hosted git repository. danhaywood pushed a commit to branch CAUSEWAY-3676 in repository https://gitbox.apache.org/repos/asf/causeway.git
commit 9776d32e0ca35dd8f1a5cd70def0b8d5d1c7beac Author: danhaywood <[email protected]> AuthorDate: Sun Jan 28 15:12:11 2024 +0000 CAUSEWAY-3676: cleans up docs on graphql config --- .../causeway.persistence.commons~post.adoc | 3 ++ .../causeway.persistence.commons~pre.adoc | 4 ++ .../causeway.viewer.graphql~post.adoc | 4 ++ .../section-hooks/causeway.viewer.graphql~pre.adoc | 4 ++ mavendeps/webapp/pom.xml | 19 +++++++- .../ROOT/pages/setup-and-configuration.adoc | 51 ++++++++++++++-------- 6 files changed, 66 insertions(+), 19 deletions(-) diff --git a/core/config/src/main/adoc/modules/config/pages/section-hooks/causeway.persistence.commons~post.adoc b/core/config/src/main/adoc/modules/config/pages/section-hooks/causeway.persistence.commons~post.adoc new file mode 100644 index 0000000000..9e0d1b7ea3 --- /dev/null +++ b/core/config/src/main/adoc/modules/config/pages/section-hooks/causeway.persistence.commons~post.adoc @@ -0,0 +1,3 @@ + +:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...] + diff --git a/core/config/src/main/adoc/modules/config/pages/section-hooks/causeway.persistence.commons~pre.adoc b/core/config/src/main/adoc/modules/config/pages/section-hooks/causeway.persistence.commons~pre.adoc new file mode 100644 index 0000000000..c70237dbf3 --- /dev/null +++ b/core/config/src/main/adoc/modules/config/pages/section-hooks/causeway.persistence.commons~pre.adoc @@ -0,0 +1,4 @@ + +:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...] + +Configuration that is common to all database persistence implementations. diff --git a/core/config/src/main/adoc/modules/config/pages/section-hooks/causeway.viewer.graphql~post.adoc b/core/config/src/main/adoc/modules/config/pages/section-hooks/causeway.viewer.graphql~post.adoc new file mode 100644 index 0000000000..21f4ba4f65 --- /dev/null +++ b/core/config/src/main/adoc/modules/config/pages/section-hooks/causeway.viewer.graphql~post.adoc @@ -0,0 +1,4 @@ + +:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...] + + diff --git a/core/config/src/main/adoc/modules/config/pages/section-hooks/causeway.viewer.graphql~pre.adoc b/core/config/src/main/adoc/modules/config/pages/section-hooks/causeway.viewer.graphql~pre.adoc new file mode 100644 index 0000000000..cec817743e --- /dev/null +++ b/core/config/src/main/adoc/modules/config/pages/section-hooks/causeway.viewer.graphql~pre.adoc @@ -0,0 +1,4 @@ + +:Notice: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by applicable law or ag [...] + +Configuration of the GraphQL viewer. diff --git a/mavendeps/webapp/pom.xml b/mavendeps/webapp/pom.xml index 4af8159baa..f5c66f7924 100644 --- a/mavendeps/webapp/pom.xml +++ b/mavendeps/webapp/pom.xml @@ -36,9 +36,9 @@ <name>Apache Causeway Maven Deps - Webapp</name> <description> Defines a module that can be almost used as a single dependency for running - an Apache Causeway webapp (Wicket, Restful Objects, GraphQL and Shiro security). + an Apache Causeway webapp (Wicket, Restful Objects and GraphQL viewers). - Note: Also requires a persistence provider. + However, it does NOT include any security module or persistence provider or extensions. </description> <dependencies> @@ -90,6 +90,21 @@ <artifactId>causeway-core-runtimeservices</artifactId> </dependency> + <dependency> + <groupId>org.apache.causeway.viewer</groupId> + <artifactId>causeway-viewer-graphql-viewer</artifactId> + </dependency> + + <dependency> + <groupId>org.apache.causeway.viewer</groupId> + <artifactId>causeway-viewer-restfulobjects-viewer</artifactId> + </dependency> + + <dependency> + <groupId>org.apache.causeway.viewer</groupId> + <artifactId>causeway-viewer-wicket-viewer</artifactId> + </dependency> + <!-- we do not include causeway-security-bypass, because doing so would in effect access to the app with any credentials. This module is for use only in prototyping. diff --git a/viewers/graphql/adoc/modules/ROOT/pages/setup-and-configuration.adoc b/viewers/graphql/adoc/modules/ROOT/pages/setup-and-configuration.adoc index ac2c75a037..d9907a020b 100644 --- a/viewers/graphql/adoc/modules/ROOT/pages/setup-and-configuration.adoc +++ b/viewers/graphql/adoc/modules/ROOT/pages/setup-and-configuration.adoc @@ -32,23 +32,40 @@ public class AppManifest { The xref:refguide:config:about.adoc[Configuration Guide] includes a xref:refguide:config:sections/causeway.viewer.graphql.adoc[section] for the GraphQL viewer. -// -// TODO: this is copied from RO API, commented out just to see structure. -// -// === Standard -// -// Standard configuration properties: -// -// * xref:refguide:config:sections/causeway.viewer.restfulobjects.adoc#causeway.viewer.restfulobjects.base-uri[causeway.viewer.restfulobjects.base-uri] -// -// * xref:refguide:config:sections/causeway.viewer.restfulobjects.adoc#causeway.viewer.restfulobjects.authentication.strategy-class-name[causeway.viewer.restfulobjects.authentication.strategy-class-name] -// + -// Security is discussed in more detail xref:security.adoc[here]. -// -// * xref:refguide:config:sections/causeway.viewer.restfulobjects.adoc#causeway.viewer.restfulobjects.strict-accept-checking[causeway.viewer.restfulobjects.strict-accept-checking] -// -// * xref:refguide:config:sections/causeway.viewer.restfulobjects.adoc#causeway.viewer.restfulobjects.honor-ui-hints[causeway.viewer.restfulobjects.honor-ui-hints] -// + + +=== SPI +=== Standard + +Standard configuration properties: + +* xref:refguide:config:sections/causeway.viewer.graphql.adoc#causeway.viewer.graphql.authentication.fallback.username[causeway.viewer.graphql.authentication.fallback.username] and xref:refguide:config:sections/causeway.viewer.graphql.adoc#causeway.viewer.graphql.authentication.fallback.roles[causeway.viewer.graphql.authentication.fallback.roles] ++ +Are used by the default implementation of xref:refguide:viewer:index/graphql/applib/auth/UserMementoProvider.adoc[], to provide a statically defined user as the executor of the API. + +* xref:refguide:config:sections/causeway.viewer.graphql.adoc#causeway.viewer.graphql.meta-data.field-name[causeway.viewer.graphql.meta-data.field-name] ++ +Defines the field name of the "meta data" structure used to expose the id, logical type name and (for entities) the version of a domain object. ++ +The default value for this config property is "_gqlv_meta". + +* xref:refguide:config:sections/causeway.viewer.graphql.adoc#causeway.viewer.graphql.type-mapper.local-date-format[causeway.viewer.graphql.type-mapper.local-date-format] and xref:refguide:config:sections/causeway.viewer.graphql.adoc#causeway.viewer.graphql.type-mapper.zoned-date-time-format[causeway.viewer.graphql.type-mapper.zoned-date-time-format] ++ +GraphQL does not have a built-in date datatype, and so dates must be represented as strings. +These configuration properties define the format of such strings. ++ +The defaults are: ++ +** "yyyy-MM-dd" ++ +for local date +** "yyyy-MM-dd HH:mm:ss z" ++ +for (zoned) date time. + ++ +These are used by the default implementation of xref:refguide:viewer:index/graphql/applib/types/TypeMapper.adoc[]. +
