http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/libraries/http/src/test/resources/org/apache/polygene/library/http/polygene-lib-http-unittests-ca.jceks ---------------------------------------------------------------------- diff --git a/libraries/http/src/test/resources/org/apache/polygene/library/http/polygene-lib-http-unittests-ca.jceks b/libraries/http/src/test/resources/org/apache/polygene/library/http/polygene-lib-http-unittests-ca.jceks new file mode 100644 index 0000000..e288b8c Binary files /dev/null and b/libraries/http/src/test/resources/org/apache/polygene/library/http/polygene-lib-http-unittests-ca.jceks differ
http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/libraries/http/src/test/resources/org/apache/polygene/library/http/polygene-lib-http-unittests-client-cert.jceks ---------------------------------------------------------------------- diff --git a/libraries/http/src/test/resources/org/apache/polygene/library/http/polygene-lib-http-unittests-client-cert.jceks b/libraries/http/src/test/resources/org/apache/polygene/library/http/polygene-lib-http-unittests-client-cert.jceks new file mode 100644 index 0000000..aae1ee1 Binary files /dev/null and b/libraries/http/src/test/resources/org/apache/polygene/library/http/polygene-lib-http-unittests-client-cert.jceks differ http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/libraries/http/src/test/resources/org/apache/polygene/library/http/polygene-lib-http-unittests-server-cert.jceks ---------------------------------------------------------------------- diff --git a/libraries/http/src/test/resources/org/apache/polygene/library/http/polygene-lib-http-unittests-server-cert.jceks b/libraries/http/src/test/resources/org/apache/polygene/library/http/polygene-lib-http-unittests-server-cert.jceks new file mode 100644 index 0000000..5311cd7 Binary files /dev/null and b/libraries/http/src/test/resources/org/apache/polygene/library/http/polygene-lib-http-unittests-server-cert.jceks differ http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/libraries/http/src/test/resources/org/apache/polygene/library/http/zest-lib-http-unittests-ca.jceks ---------------------------------------------------------------------- diff --git a/libraries/http/src/test/resources/org/apache/polygene/library/http/zest-lib-http-unittests-ca.jceks b/libraries/http/src/test/resources/org/apache/polygene/library/http/zest-lib-http-unittests-ca.jceks deleted file mode 100644 index e288b8c..0000000 Binary files a/libraries/http/src/test/resources/org/apache/polygene/library/http/zest-lib-http-unittests-ca.jceks and /dev/null differ http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/libraries/http/src/test/resources/org/apache/polygene/library/http/zest-lib-http-unittests-client-cert.jceks ---------------------------------------------------------------------- diff --git a/libraries/http/src/test/resources/org/apache/polygene/library/http/zest-lib-http-unittests-client-cert.jceks b/libraries/http/src/test/resources/org/apache/polygene/library/http/zest-lib-http-unittests-client-cert.jceks deleted file mode 100644 index aae1ee1..0000000 Binary files a/libraries/http/src/test/resources/org/apache/polygene/library/http/zest-lib-http-unittests-client-cert.jceks and /dev/null differ http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/libraries/http/src/test/resources/org/apache/polygene/library/http/zest-lib-http-unittests-server-cert.jceks ---------------------------------------------------------------------- diff --git a/libraries/http/src/test/resources/org/apache/polygene/library/http/zest-lib-http-unittests-server-cert.jceks b/libraries/http/src/test/resources/org/apache/polygene/library/http/zest-lib-http-unittests-server-cert.jceks deleted file mode 100644 index 5311cd7..0000000 Binary files a/libraries/http/src/test/resources/org/apache/polygene/library/http/zest-lib-http-unittests-server-cert.jceks and /dev/null differ http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/libraries/servlet/src/main/java/org/apache/polygene/library/servlet/lifecycle/AbstractPolygeneServletBootstrap.java ---------------------------------------------------------------------- diff --git a/libraries/servlet/src/main/java/org/apache/polygene/library/servlet/lifecycle/AbstractPolygeneServletBootstrap.java b/libraries/servlet/src/main/java/org/apache/polygene/library/servlet/lifecycle/AbstractPolygeneServletBootstrap.java new file mode 100644 index 0000000..3a0ee39 --- /dev/null +++ b/libraries/servlet/src/main/java/org/apache/polygene/library/servlet/lifecycle/AbstractPolygeneServletBootstrap.java @@ -0,0 +1,143 @@ +/* + * 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 agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * + */ +package org.apache.polygene.library.servlet.lifecycle; + +import javax.servlet.ServletContext; +import javax.servlet.ServletContextEvent; +import javax.servlet.ServletContextListener; +import org.apache.polygene.api.PolygeneAPI; +import org.apache.polygene.api.common.InvalidApplicationException; +import org.apache.polygene.api.structure.Application; +import org.apache.polygene.api.structure.ApplicationDescriptor; +import org.apache.polygene.bootstrap.ApplicationAssembler; +import org.apache.polygene.bootstrap.Energy4Java; +import org.apache.polygene.library.servlet.PolygeneServlet; +import org.apache.polygene.library.servlet.PolygeneServletSupport; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +/** + * Abstract ServletContextListener implementing ApplicationAssembler. + * + * Extends this class to easily bind a Polygene Application activation/passivation to your webapp lifecycle. + * + * The {@link Application} is set as a {@link ServletContext} attribute named using a constant. + * In your servlets, filters, whatever has access to the {@link ServletContext} use the following code to get a + * handle on the {@link Application}: + * + * <pre> + * org.apache.polygene.api.structure.Application application; + * + * application = ( Application ) servletContext.getAttribute( PolygeneServletSupport.APP_IN_CTX ); + * + * // Or, shorter: + * + * application = PolygeneServletSupport.application( servletContext ); + * + * </pre> + * + * Rembember that the servlet specification states: + * + * In cases where the container is distributed over many virtual machines, a Web application will have an instance of + * the ServletContext for each JVM. + * + * Context attributes are local to the JVM in which they were created. This prevents ServletContext attributes from + * being a shared memory store in a distributed container. When information needs to be shared between servlets running + * in a distributed environment, the information should be placed into a session, stored in a database, or set in an + * Enterprise JavaBeans component. + */ +public abstract class AbstractPolygeneServletBootstrap + implements ServletContextListener, ApplicationAssembler +{ + + private static final Logger LOGGER = LoggerFactory.getLogger( PolygeneServlet.class.getPackage().getName() ); + // Polygene Runtime + protected PolygeneAPI api; + protected Energy4Java polygene; + // Polygene Application + protected ApplicationDescriptor applicationModel; + protected Application application; + + @Override + public final void contextInitialized( ServletContextEvent sce ) + { + try { + + ServletContext context = sce.getServletContext(); + + LOGGER.trace( "Assembling Application" ); + polygene = new Energy4Java(); + applicationModel = polygene.newApplicationModel( this ); + + LOGGER.trace( "Instanciating and activating Application" ); + application = applicationModel.newInstance( polygene.api() ); + api = polygene.api(); + beforeApplicationActivation( application ); + application.activate(); + afterApplicationActivation( application ); + + LOGGER.trace( "Storing Application in ServletContext" ); + context.setAttribute( PolygeneServletSupport.APP_IN_CTX, application ); + + } catch ( Exception ex ) { + if ( application != null ) { + try { + beforeApplicationPassivation( application ); + application.passivate(); + afterApplicationPassivation( application ); + } catch ( Exception ex1 ) { + LOGGER.warn( "Application not null and could not passivate it.", ex1 ); + } + } + throw new InvalidApplicationException( "Unexpected error during ServletContext initialization, see previous log for errors.", ex ); + } + } + + protected void beforeApplicationActivation( Application app ) + { + } + + protected void afterApplicationActivation( Application app ) + { + } + + @Override + public final void contextDestroyed( ServletContextEvent sce ) + { + try { + if ( application != null ) { + beforeApplicationPassivation( application ); + application.passivate(); + afterApplicationPassivation( application ); + } + } catch ( Exception ex ) { + LOGGER.warn( "Unable to passivate Polygene Application.", ex ); + } + } + + protected void beforeApplicationPassivation( Application app ) + { + } + + protected void afterApplicationPassivation( Application app ) + { + } + +} http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/libraries/servlet/src/main/java/org/apache/polygene/library/servlet/lifecycle/AbstractZestServletBootstrap.java ---------------------------------------------------------------------- diff --git a/libraries/servlet/src/main/java/org/apache/polygene/library/servlet/lifecycle/AbstractZestServletBootstrap.java b/libraries/servlet/src/main/java/org/apache/polygene/library/servlet/lifecycle/AbstractZestServletBootstrap.java deleted file mode 100644 index 3a0ee39..0000000 --- a/libraries/servlet/src/main/java/org/apache/polygene/library/servlet/lifecycle/AbstractZestServletBootstrap.java +++ /dev/null @@ -1,143 +0,0 @@ -/* - * 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 agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * - */ -package org.apache.polygene.library.servlet.lifecycle; - -import javax.servlet.ServletContext; -import javax.servlet.ServletContextEvent; -import javax.servlet.ServletContextListener; -import org.apache.polygene.api.PolygeneAPI; -import org.apache.polygene.api.common.InvalidApplicationException; -import org.apache.polygene.api.structure.Application; -import org.apache.polygene.api.structure.ApplicationDescriptor; -import org.apache.polygene.bootstrap.ApplicationAssembler; -import org.apache.polygene.bootstrap.Energy4Java; -import org.apache.polygene.library.servlet.PolygeneServlet; -import org.apache.polygene.library.servlet.PolygeneServletSupport; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -/** - * Abstract ServletContextListener implementing ApplicationAssembler. - * - * Extends this class to easily bind a Polygene Application activation/passivation to your webapp lifecycle. - * - * The {@link Application} is set as a {@link ServletContext} attribute named using a constant. - * In your servlets, filters, whatever has access to the {@link ServletContext} use the following code to get a - * handle on the {@link Application}: - * - * <pre> - * org.apache.polygene.api.structure.Application application; - * - * application = ( Application ) servletContext.getAttribute( PolygeneServletSupport.APP_IN_CTX ); - * - * // Or, shorter: - * - * application = PolygeneServletSupport.application( servletContext ); - * - * </pre> - * - * Rembember that the servlet specification states: - * - * In cases where the container is distributed over many virtual machines, a Web application will have an instance of - * the ServletContext for each JVM. - * - * Context attributes are local to the JVM in which they were created. This prevents ServletContext attributes from - * being a shared memory store in a distributed container. When information needs to be shared between servlets running - * in a distributed environment, the information should be placed into a session, stored in a database, or set in an - * Enterprise JavaBeans component. - */ -public abstract class AbstractPolygeneServletBootstrap - implements ServletContextListener, ApplicationAssembler -{ - - private static final Logger LOGGER = LoggerFactory.getLogger( PolygeneServlet.class.getPackage().getName() ); - // Polygene Runtime - protected PolygeneAPI api; - protected Energy4Java polygene; - // Polygene Application - protected ApplicationDescriptor applicationModel; - protected Application application; - - @Override - public final void contextInitialized( ServletContextEvent sce ) - { - try { - - ServletContext context = sce.getServletContext(); - - LOGGER.trace( "Assembling Application" ); - polygene = new Energy4Java(); - applicationModel = polygene.newApplicationModel( this ); - - LOGGER.trace( "Instanciating and activating Application" ); - application = applicationModel.newInstance( polygene.api() ); - api = polygene.api(); - beforeApplicationActivation( application ); - application.activate(); - afterApplicationActivation( application ); - - LOGGER.trace( "Storing Application in ServletContext" ); - context.setAttribute( PolygeneServletSupport.APP_IN_CTX, application ); - - } catch ( Exception ex ) { - if ( application != null ) { - try { - beforeApplicationPassivation( application ); - application.passivate(); - afterApplicationPassivation( application ); - } catch ( Exception ex1 ) { - LOGGER.warn( "Application not null and could not passivate it.", ex1 ); - } - } - throw new InvalidApplicationException( "Unexpected error during ServletContext initialization, see previous log for errors.", ex ); - } - } - - protected void beforeApplicationActivation( Application app ) - { - } - - protected void afterApplicationActivation( Application app ) - { - } - - @Override - public final void contextDestroyed( ServletContextEvent sce ) - { - try { - if ( application != null ) { - beforeApplicationPassivation( application ); - application.passivate(); - afterApplicationPassivation( application ); - } - } catch ( Exception ex ) { - LOGGER.warn( "Unable to passivate Polygene Application.", ex ); - } - } - - protected void beforeApplicationPassivation( Application app ) - { - } - - protected void afterApplicationPassivation( Application app ) - { - } - -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/libraries/spring/src/test/resources/org/apache/polygene/library/spring/bootstrap/PolygeneExportServiceTest-context.xml ---------------------------------------------------------------------- diff --git a/libraries/spring/src/test/resources/org/apache/polygene/library/spring/bootstrap/PolygeneExportServiceTest-context.xml b/libraries/spring/src/test/resources/org/apache/polygene/library/spring/bootstrap/PolygeneExportServiceTest-context.xml new file mode 100644 index 0000000..1e29446 --- /dev/null +++ b/libraries/spring/src/test/resources/org/apache/polygene/library/spring/bootstrap/PolygeneExportServiceTest-context.xml @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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 agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + ~ + ~ + --> +<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:polygene="http://polygene.apache.org/schema/polygene/spring" + xsi:schemaLocation=" + http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd + http://polygene.apache.org/schema/polygene/spring http://polygene.apache.org/schema/polygene/spring/spring-0.5.xsd"> + + <polygene:bootstrap class="org.apache.polygene.library.spring.bootstrap.PolygeneTestBootstrap" /> + <polygene:service id="commentService" /> + + <bean id="commentServiceHolder" class="org.apache.polygene.library.spring.bootstrap.CommentServiceHolder"> + <constructor-arg ref="commentService" /> + </bean> + + <!-- This Spring bean is injected as a service to the Apache Polygene application --> + <bean id="toUppercaseService" class="org.apache.polygene.library.spring.bootstrap.ToUppercaseService" /> + +</beans> http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/libraries/spring/src/test/resources/org/apache/polygene/library/spring/bootstrap/ZestExportServiceTest-context.xml ---------------------------------------------------------------------- diff --git a/libraries/spring/src/test/resources/org/apache/polygene/library/spring/bootstrap/ZestExportServiceTest-context.xml b/libraries/spring/src/test/resources/org/apache/polygene/library/spring/bootstrap/ZestExportServiceTest-context.xml deleted file mode 100644 index 1e29446..0000000 --- a/libraries/spring/src/test/resources/org/apache/polygene/library/spring/bootstrap/ZestExportServiceTest-context.xml +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - ~ 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 agreed to in writing, software - ~ distributed under the License is distributed on an "AS IS" BASIS, - ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ~ See the License for the specific language governing permissions and - ~ limitations under the License. - ~ - ~ - --> -<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:polygene="http://polygene.apache.org/schema/polygene/spring" - xsi:schemaLocation=" - http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd - http://polygene.apache.org/schema/polygene/spring http://polygene.apache.org/schema/polygene/spring/spring-0.5.xsd"> - - <polygene:bootstrap class="org.apache.polygene.library.spring.bootstrap.PolygeneTestBootstrap" /> - <polygene:service id="commentService" /> - - <bean id="commentServiceHolder" class="org.apache.polygene.library.spring.bootstrap.CommentServiceHolder"> - <constructor-arg ref="commentService" /> - </bean> - - <!-- This Spring bean is injected as a service to the Apache Polygene application --> - <bean id="toUppercaseService" class="org.apache.polygene.library.spring.bootstrap.ToUppercaseService" /> - -</beans> http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/libraries/spring/src/test/resources/org/apache/polygene/library/spring/importer/PolygeneImportServiceTest-context.xml ---------------------------------------------------------------------- diff --git a/libraries/spring/src/test/resources/org/apache/polygene/library/spring/importer/PolygeneImportServiceTest-context.xml b/libraries/spring/src/test/resources/org/apache/polygene/library/spring/importer/PolygeneImportServiceTest-context.xml new file mode 100644 index 0000000..24bc63f --- /dev/null +++ b/libraries/spring/src/test/resources/org/apache/polygene/library/spring/importer/PolygeneImportServiceTest-context.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ~ 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 agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + ~ + ~ + --> +<beans xmlns="http://www.springframework.org/schema/beans" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation=" + http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> + + <bean id="commentService" class="org.apache.polygene.library.spring.importer.CommentServiceBean"/> + <bean id="commentService2" class="org.apache.polygene.library.spring.importer.CommentServiceBean2"/> +</beans> http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/libraries/spring/src/test/resources/org/apache/polygene/library/spring/importer/ZestImportServiceTest-context.xml ---------------------------------------------------------------------- diff --git a/libraries/spring/src/test/resources/org/apache/polygene/library/spring/importer/ZestImportServiceTest-context.xml b/libraries/spring/src/test/resources/org/apache/polygene/library/spring/importer/ZestImportServiceTest-context.xml deleted file mode 100644 index 24bc63f..0000000 --- a/libraries/spring/src/test/resources/org/apache/polygene/library/spring/importer/ZestImportServiceTest-context.xml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - ~ 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 agreed to in writing, software - ~ distributed under the License is distributed on an "AS IS" BASIS, - ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ~ See the License for the specific language governing permissions and - ~ limitations under the License. - ~ - ~ - --> -<beans xmlns="http://www.springframework.org/schema/beans" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation=" - http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> - - <bean id="commentService" class="org.apache.polygene.library.spring.importer.CommentServiceBean"/> - <bean id="commentService2" class="org.apache.polygene.library.spring.importer.CommentServiceBean2"/> -</beans> http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/manual/src/docs/tutorials/howto-depend-on-polygene.txt ---------------------------------------------------------------------- diff --git a/manual/src/docs/tutorials/howto-depend-on-polygene.txt b/manual/src/docs/tutorials/howto-depend-on-polygene.txt new file mode 100644 index 0000000..d71fd71 --- /dev/null +++ b/manual/src/docs/tutorials/howto-depend-on-polygene.txt @@ -0,0 +1,193 @@ +/////////////////////////////////////////////////////////////// + * 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 agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. +/////////////////////////////////////////////////////////////// + +[[howto-depend-on-polygene,Depend on Polygene⢠in your build]] += Depend on Polygene⢠in your build = + +NOTE: Some of the <<libraries>> and <<extensions>> depend on artifacts that are not deployed in central, you'll need to +add other repositories to your build scripts accordingly. + +Release artifacts, including sources and javadoc, are deployed to Maven Central: + +http://repo1.maven.org/maven2/ (US) + +http://uk.maven.org/maven2/ (Europe) + +Snapshot artifacts, including sources and javadoc, are built against the `develop` branch and deployed weekly to the Apache SNAPSHOTS repository: + +http://repository.apache.org/snapshots/ + + +== Manually == + +If you don't rely on your build scripts dependency resolution mechanism you should +https://polygene.apache.org/download.html[download] the SDK distribution. + + +== Using Maven == + +You simply declare dependencies on Polygene⢠artifacts: + +[source,xml] +---- +<dependencies> + <dependency> + <groupId>org.apache.polygene.core</groupId> + <artifactId>org.apache.polygene.core.bootstrap</artifactId> + <version>POLYGENE_VERSION</version> + </dependency> + <dependency> + <groupId>org.apache.polygene.core</groupId> + <artifactId>org.apache.polygene.core.runtime</artifactId> + <version>POLYGENE_VERSION</version> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.apache.polygene.core</groupId> + <artifactId>org.apache.polygene.core.testsupport</artifactId> + <version>POLYGENE_VERSION</version> + <scope>test</scope> + </dependency> +</dependencies> +---- + +Where `POLYGENE_VERSION` is the Polygene⢠version you want to use. + +If you want to use +-SNAPSHOT+ versions, you need to register the Apache Snapshots repository: + +[source,xml] +---- +<repositories> + <repository> + <id>apache-snapshots</id> + <url>https://repository.apache.org/snapshots/</url> + <releases><enabled>false</enabled></releases> + <snapshots><enabled>true</enabled></snapshots> + </repository> +</repositories> +---- + + +== Using Gradle == + +You simply declare dependencies on Polygene⢠artifacts: + +[source,groovy] +---- +dependencies { + compile "org.apache.polygene.core:org.apache.polygene.core.bootstrap:POLYGENE_VERSION" + runtime "org.apache.polygene.core:org.apache.polygene.core.runtime:POLYGENE_VERSION" + testCompile "org.apache.polygene.core:org.apache.polygene.core.testsupport:POLYGENE_VERSION" +} +---- + +Where `POLYGENE_VERSION` is the Polygene⢠version you want to use. + +If you want to use +-SNAPSHOT+ versions, you need to register the Apache Snapshots repository: + +[source,groovy] +---- +repositories { + maven { name 'apache-snapshots'; url "https://repository.apache.org/snapshots/" } +} +---- + + +== Using Buildr == + +You simply declare dependencies on Polygene⢠artifacts: + +[source,ruby] +---- +compile.with 'org.apache.polygene.core:org.apache.polygene.core.bootstrap:POLYGENE_VERSION' +package(:war).with :libs => 'org.apache.polygene.core:org.apache.polygene.core.runtime:POLYGENE_VERSION' +test.with 'org.apache.polygene.core:org.apache.polygene.core.testsupport:POLYGENE_VERSION' +---- + +Where `POLYGENE_VERSION` is the Polygene⢠version you want to use. + +If you want to use +-SNAPSHOT+ versions, you need to register the Apache Snapshots repository: + +[source,ruby] +---- +repositories.remote << 'https://repository.apache.org/snapshots/' +---- + + +== Using SBT == + +You simply declare dependencies on Polygene⢠artifacts: + +[source,scala] +---- +libraryDependencies += \ + "org.apache.polygene.core" % "org.apache.polygene.core.bootstrap" % "POLYGENE_VERSION" \ + withSources() withJavadoc() +libraryDependencies += \ + "org.apache.polygene.core" % "org.apache.polygene.core.runtime" % "POLYGENE_VERSION" % "runtime" \ + withSources() withJavadoc() +libraryDependencies += \ + "org.apache.polygene.core" % "org.apache.polygene.core.testsupport" % "POLYGENE_VERSION" % "test" \ + withSources() withJavadoc() +---- + +Where `POLYGENE_VERSION` is the Polygene⢠version you want to use. + +If you want to use +-SNAPSHOT+ versions, you need to register the Apache Snapshots repository: + +[source,scala] +---- +resolvers += "apache-snapshots" at "https://repository.apache.org/snapshots/" +---- + + +== Using Ivy == + +You simply declare dependencies on Polygene⢠artifacts: + +[source,xml] +---- +<ivy-module> + <dependencies> + <dependency org="org.apache.polygene.core" name="org.apache.polygene.core.bootstrap" + rev="POLYGENE_VERSION" conf="default" /> + <dependency org="org.apache.polygene.core" name="org.apache.polygene.core.runtime" + rev="POLYGENE_VERSION" conf="runtime" /> + <dependency org="org.apache.polygene.core" name="org.apache.polygene.core.testsupport" + rev="POLYGENE_VERSION" conf="test" /> + </dependencies> +</ivy-module> +---- + +Where `POLYGENE_VERSION` is the Polygene⢠version you want to use. + +If you want to use +-SNAPSHOT+ versions, you need to register the Apache Snapshots repository in a `ivysettings.xml` file: + +[source,xml] +---- +<ivysettings> + <settings defaultResolver="chain"/> + <resolvers> + <chain name="chain"> + <ibiblio name="apache-snapshots" m2compatible="true" + root="https://repository.apache.org/snapshots/"/> + </chain> + </resolvers> +</ivysettings> +---- http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/manual/src/docs/tutorials/howto-depend-on-zest.txt ---------------------------------------------------------------------- diff --git a/manual/src/docs/tutorials/howto-depend-on-zest.txt b/manual/src/docs/tutorials/howto-depend-on-zest.txt deleted file mode 100644 index d71fd71..0000000 --- a/manual/src/docs/tutorials/howto-depend-on-zest.txt +++ /dev/null @@ -1,193 +0,0 @@ -/////////////////////////////////////////////////////////////// - * 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 agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. -/////////////////////////////////////////////////////////////// - -[[howto-depend-on-polygene,Depend on Polygene⢠in your build]] -= Depend on Polygene⢠in your build = - -NOTE: Some of the <<libraries>> and <<extensions>> depend on artifacts that are not deployed in central, you'll need to -add other repositories to your build scripts accordingly. - -Release artifacts, including sources and javadoc, are deployed to Maven Central: - -http://repo1.maven.org/maven2/ (US) - -http://uk.maven.org/maven2/ (Europe) - -Snapshot artifacts, including sources and javadoc, are built against the `develop` branch and deployed weekly to the Apache SNAPSHOTS repository: - -http://repository.apache.org/snapshots/ - - -== Manually == - -If you don't rely on your build scripts dependency resolution mechanism you should -https://polygene.apache.org/download.html[download] the SDK distribution. - - -== Using Maven == - -You simply declare dependencies on Polygene⢠artifacts: - -[source,xml] ----- -<dependencies> - <dependency> - <groupId>org.apache.polygene.core</groupId> - <artifactId>org.apache.polygene.core.bootstrap</artifactId> - <version>POLYGENE_VERSION</version> - </dependency> - <dependency> - <groupId>org.apache.polygene.core</groupId> - <artifactId>org.apache.polygene.core.runtime</artifactId> - <version>POLYGENE_VERSION</version> - <scope>runtime</scope> - </dependency> - <dependency> - <groupId>org.apache.polygene.core</groupId> - <artifactId>org.apache.polygene.core.testsupport</artifactId> - <version>POLYGENE_VERSION</version> - <scope>test</scope> - </dependency> -</dependencies> ----- - -Where `POLYGENE_VERSION` is the Polygene⢠version you want to use. - -If you want to use +-SNAPSHOT+ versions, you need to register the Apache Snapshots repository: - -[source,xml] ----- -<repositories> - <repository> - <id>apache-snapshots</id> - <url>https://repository.apache.org/snapshots/</url> - <releases><enabled>false</enabled></releases> - <snapshots><enabled>true</enabled></snapshots> - </repository> -</repositories> ----- - - -== Using Gradle == - -You simply declare dependencies on Polygene⢠artifacts: - -[source,groovy] ----- -dependencies { - compile "org.apache.polygene.core:org.apache.polygene.core.bootstrap:POLYGENE_VERSION" - runtime "org.apache.polygene.core:org.apache.polygene.core.runtime:POLYGENE_VERSION" - testCompile "org.apache.polygene.core:org.apache.polygene.core.testsupport:POLYGENE_VERSION" -} ----- - -Where `POLYGENE_VERSION` is the Polygene⢠version you want to use. - -If you want to use +-SNAPSHOT+ versions, you need to register the Apache Snapshots repository: - -[source,groovy] ----- -repositories { - maven { name 'apache-snapshots'; url "https://repository.apache.org/snapshots/" } -} ----- - - -== Using Buildr == - -You simply declare dependencies on Polygene⢠artifacts: - -[source,ruby] ----- -compile.with 'org.apache.polygene.core:org.apache.polygene.core.bootstrap:POLYGENE_VERSION' -package(:war).with :libs => 'org.apache.polygene.core:org.apache.polygene.core.runtime:POLYGENE_VERSION' -test.with 'org.apache.polygene.core:org.apache.polygene.core.testsupport:POLYGENE_VERSION' ----- - -Where `POLYGENE_VERSION` is the Polygene⢠version you want to use. - -If you want to use +-SNAPSHOT+ versions, you need to register the Apache Snapshots repository: - -[source,ruby] ----- -repositories.remote << 'https://repository.apache.org/snapshots/' ----- - - -== Using SBT == - -You simply declare dependencies on Polygene⢠artifacts: - -[source,scala] ----- -libraryDependencies += \ - "org.apache.polygene.core" % "org.apache.polygene.core.bootstrap" % "POLYGENE_VERSION" \ - withSources() withJavadoc() -libraryDependencies += \ - "org.apache.polygene.core" % "org.apache.polygene.core.runtime" % "POLYGENE_VERSION" % "runtime" \ - withSources() withJavadoc() -libraryDependencies += \ - "org.apache.polygene.core" % "org.apache.polygene.core.testsupport" % "POLYGENE_VERSION" % "test" \ - withSources() withJavadoc() ----- - -Where `POLYGENE_VERSION` is the Polygene⢠version you want to use. - -If you want to use +-SNAPSHOT+ versions, you need to register the Apache Snapshots repository: - -[source,scala] ----- -resolvers += "apache-snapshots" at "https://repository.apache.org/snapshots/" ----- - - -== Using Ivy == - -You simply declare dependencies on Polygene⢠artifacts: - -[source,xml] ----- -<ivy-module> - <dependencies> - <dependency org="org.apache.polygene.core" name="org.apache.polygene.core.bootstrap" - rev="POLYGENE_VERSION" conf="default" /> - <dependency org="org.apache.polygene.core" name="org.apache.polygene.core.runtime" - rev="POLYGENE_VERSION" conf="runtime" /> - <dependency org="org.apache.polygene.core" name="org.apache.polygene.core.testsupport" - rev="POLYGENE_VERSION" conf="test" /> - </dependencies> -</ivy-module> ----- - -Where `POLYGENE_VERSION` is the Polygene⢠version you want to use. - -If you want to use +-SNAPSHOT+ versions, you need to register the Apache Snapshots repository in a `ivysettings.xml` file: - -[source,xml] ----- -<ivysettings> - <settings defaultResolver="chain"/> - <resolvers> - <chain name="chain"> - <ibiblio name="apache-snapshots" m2compatible="true" - root="https://repository.apache.org/snapshots/"/> - </chain> - </resolvers> -</ivysettings> ----- http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/manual/src/docs/website/resources/css/polygene.css ---------------------------------------------------------------------- diff --git a/manual/src/docs/website/resources/css/polygene.css b/manual/src/docs/website/resources/css/polygene.css new file mode 100644 index 0000000..d512429 --- /dev/null +++ b/manual/src/docs/website/resources/css/polygene.css @@ -0,0 +1,825 @@ +/* + * 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 agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * + */ + +span.remark +{ + background: yellow; +} + +td p +{ + margin: 0.125em 0; +} + +#disqus_thread +{ + max-width: 40em; +} + +body #toolbar_item command_help +{ + /* display: none !important; */ +} + +pre { + max-width: 55em; + overflow: scroll; +} + +.syntaxhighlighter a, +.syntaxhighlighter div, +.syntaxhighlighter code, +.syntaxhighlighter table, +.syntaxhighlighter table td, +.syntaxhighlighter table tr, +.syntaxhighlighter table tbody, +.syntaxhighlighter table thead, +.syntaxhighlighter table caption, +.syntaxhighlighter textarea +{ + font-size: 12px !important; + font-family: Consolas, Monaco, "Bitstream Vera Sans Mono", monospace !important; + line-height: 14px !important; +} + +.syntaxhighlighter { + background-color: rgba(11,117,188,0.1) !important; + /* + overflow: visible !important; + */ + border: 1px solid #0b75bc; + padding: 8px; + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; +} + +.syntaxhighlighter .line.alt1 { + background-color: rgba(11,117,188,0.05) !important; +} +.syntaxhighlighter .line.alt2 { + background-color: rgba(11,117,188,0.1) !important; +} + +html +{ + text-align: center; +} + +html body +{ + background: url("bg.png"); + margin: 0 auto; + text-align: left; +} + +div.navheader, div.navfooter { + padding: 0 5%; +} + +body, div.navheader th, div.navheader td, div.navfooter td +{ + font-family: Georgia, "Times New Roman", Times, serif; + color: #4c4c4c; +} + +a { + color: #0b75bc; +} + +a:hover { + text-decoration: none; +} + +a:visited { + color: #0b75bc; + /* color: #08568a; */ +} + +hr { + border-color: #0b75bc; + border-style: solid; +} + +.navheader a { + color: #acacac; + text-decoration: none; + font-family: Helvetica, Arial, sans-serif; +} + +.navheader a:hover, .navfooter a:hover { + text-decoration: underline; +} + +h1, h2, h3, h4, h5, h6, +div.toc p b, +div.important th, div.info th, div.tip th, +div.warning th, div.note th, div.caution th, +p.legalnotice-title, +div.refnamediv p, +div.sidebar p.title, +th, +div.table-contents td p span.strong strong, +tr.question td b p +{ + color: #0b75bc; + font-family: Helvetica, Arial, sans-serif; + text-shadow: 0 1px 0 #fff; +} + + +.book, .chapter, .part { + width:90%; + margin: 0 auto; +} + +td p strong +{ + font-size: 1.067em; +} + +tr.question td b p +{ + font-size: 1em; + margin: 0.5em 0 0 0; +} + +tr.question td +{ + padding: 0; +} + +tr.answer td, tr.answer td p +{ + padding-top: 0; +} + +tr.answer td +{ + padding-left: 1em; +} + +div.navheader +{ + height: 50px; + background: url(../../../../resources/css/navHead_bg.png) repeat-x; +} + +div.navheader hr +{ + display: none; +} + +div.refentry body h2.title, div.refentry body h1.title, div.refentry div.refnamediv p, +body > div.section h1, body > div.section h2, +body > div.part h1, body > div.part h2, +body > div.chapter h1, body > div.chapter h2, +body > div.book h1, +body > div.preface h2, +body > div.appendix h2 +{ + border-bottom: none; + margin-top: 2.2em; + margin-bottom: .7em; +} + +div.legalnotice +{ + padding-top: 3em; +} + +p.legalnotice-title b +{ + font-size: 1.5em; + font-style: normal; + font-weight: bold; +} + +p.legalnotice-title +{ + margin-bottom: 2em; +} + +body > div.book h1.title +{ + margin-top: 0.5em; + padding-top: 0; + margin-bottom: 0; +} + +div.part h1.title +{ + margin-top: 1.5em; +} + +.book div.titlepage { + position: absolute; + top: 40px; + background: url(logo.png) no-repeat left top; + min-height: 250px; + padding-left: 150px; +} + +.book div.titlepage .authorgroup { + font-size: 150%; +} + +.book div.titlepage hr { + display: none; +} + +div.titlepage h3.corpauthor +{ +} + +div.refnamediv +{ + padding-top: 24px; + margin-bottom: 24px; +} + +div.refsynopsisdiv h2, div.refsect1 h2 +{ + border-bottom: none; +} + +div.titlepage h3.corpauthor a.ulink, div.titlepage h3.corpauthor a.ulink:link, +div.titlepage h3.corpauthor a.ulink:visited, div.titlepage h3.corpauthor a.ulink:hover +div.titlepage h3.corpauthor a.ulink:focus, div.titlepage h3.corpauthor a.ulink:active +{ + color: #dddddd; + text-decoration: none; + font-style: normal; + padding-left: 0.6em; +} + +div.refnamediv h2 +{ + display: none; +} + +div.refnamediv p +{ + font-size: 1em; + font-weight: bold; + margin-top: 3em; + margin-bottom: 2em; + width: 60%; + line-height: 1.2; +} + +p, li, dt, div.navheader th, div.navheader td, div.navfooter td +{ + font-family: Georgia, "Times New Roman", Times, serif; + font-size: .9375em; + text-shadow: 0 1px 0 #fff; +} + +p, ul, ol +{ + margin-top: 0; + margin-bottom: 1em; +} + +li p +{ + margin-bottom: 0.5em; +} + +div.list-of-figures p, div.list-of-tables p +{ + margin-top: 1.5em; +} + +div.list-of-figures p b, div.list-of-tables p b, div.sidebar p b +{ + font-style: normal; + font-weight: bold; +} + +div.toc +{ + margin-bottom: 1em; +} + +.book .toc { + margin-top: 220px; +} + +div.toc p { + width: 100%; + font-family: Helvetica, Arial, sans-serif; + color: #0b75bc; + font-size: 120%; + border-bottom: 1px solid #0b75bc; +} + +div.toc a, div.toc a:visited { + color: #0b75bc; +} + +div.toc dt { + margin-bottom: 8px; +} + +div.toc dl dl { + margin: 5px 0; +} + +p.copyright +{ + margin: 0; + padding: 10px 0 5px 0; + text-align: center; + max-width: 100%; + background: #0b75bc url(../../../../resources/css/copyright_bg.png) repeat-x top; + color: #fff; + text-shadow: none; + border-bottom: 1px solid #095e96; +} + +.titlepage p.copyright { + background: none; + border: none; + text-align: left; + color: #0b75bc; +} + +code.literal +{ + font-family: Consolas, Monaco, monospace; + font-size: .9375em; +} + +td code.literal +{ + font-size: .8em; +} + +li +{ + line-height: 1.3em; +} + +p +{ + line-height: 1.6em; +} + +.toc p { + max-width: 100%; +} + +ul, ol +{ + max-width: 38em; +} + +div.sidebar +{ + max-width: 30em; + padding: 0.67em 1em; + background: #c1d5d9 url("../../../../resources/css/content-bg.png") repeat-x; +} + +div.sidebar p.title +{ + margin: 0; +} + +div.sidebar ul +{ + margin-top: 0.3em; + margin-bottom: 0.3em; +} + +p b, div.figure p.title b, div.table p.title b +{ + font-style: italic; + font-weight: normal; +} + +/* BEGIN SIDE NOTES */ +div.important, div.info, div.tip, div.note, +div.warning, div.caution +{ + float: right; + max-width: 20em; + margin: 1em 0 1em 1em !important; + padding: 1em !important; + font-size: 0.9em; + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; +} +div.important, div.info, div.tip, div.note +{ + background-color: rgba(11, 117, 188, 0.1) !important; + border: 1px solid #0b75bc; +} +div.warning +{ + background-color: rgba(188, 117, 11, 0.1) !important; + border: 1px solid #bc750b; +} +div.caution +{ + background-color: rgba(188, 11, 11, 0.1) !important; + border: 1px solid #bc0b0b; +} +div.important h3, div.info h3, div.tip h3, div.note h3, +div.warning h3, div.caution h3 +{ + margin: 0 0 0.5em 0 !important; + line-height: 50px; + padding-right: 55px; + background-position: top right !important; + background-repeat: no-repeat !important; +} +div.important h3 +{ + background-image: url("important.png"); +} +div.info h3, div.tip h3 +{ + background-image: url("tip.png"); +} +div.note h3 +{ + background-image: url("note.png"); +} +div.warning h3 +{ + background-image: url("warning.png"); + color: #bc750b; +} +div.caution h3 +{ + background-image: url("caution.png"); + color: #bc0b0b; +} +div.important p, div.info p, div.tip p, div.note p, +div.warning p, div.caution p +{ + margin: 0 0 0.5em 0 !important; +} +/* END SIDE NOTES */ + + +div.table, div.informaltable +{ + width: 100%; + clear: both; +} +div.table div.table-contents, div.informaltable div.table-contents +{ + background-color: rgba(11,117,188,0.1) !important; + border: 1px solid #0b75bc; + padding: 8px; + -moz-border-radius: 5px; + -webkit-border-radius: 5px; + border-radius: 5px; +} + +div.table table, div.informaltable table +{ + width: 100%; + border: none; + border-collapse: collapse; +} + +td, th +{ + padding: 2px 4px; +} + +div.table table, div.informaltable table, +div.table table th, div.informaltable table th, +div.table table td, div.informaltable table td, +div.table table tr, div.informaltable table tr, +div.table table tbody, div.informaltable table tbody, +div.table table thead, div.informaltable table thead, +div.table table tfoot, div.informaltable table tfoot +{ + font-size: 15px; + text-align: center; +} +div.table table td, +div.informaltable table td, +div.table table th, +div.informaltable table th +{ + border: 1px solid #3D8AC9; +} +div.table table tr:first-child th, +div.informaltable table tr:first-child th +{ + border-top: 0; +} +div.table table tr:last-child td, +div.informaltable table tr:last-child td +{ + border-bottom: 0; +} +div.table table tr td:first-child, +div.informaltable table tr td:first-child, +div.table table tr th:first-child, +div.informaltable table tr th:first-child +{ + border-left: 0; +} +div.table table tr td:last-child, +div.informaltable table tr td:last-child, +div.table table tr th:last-child, +div.informaltable table tr th:last-child +{ + border-right: 0; +} + +div.queryresult table tbody td p code.literal +{ + color: #000000; +} + +div.queryresult table thead tr, +div.queryresult table tfoot tr +{ + background: #cad9dc; +} + +div.queryresult table tbody +{ + background: #d1dee1; +} + +div.queryresult table tbody tr.evenresult +{ + background: #dfe8eb; +} + +div.queryresult table thead th +{ + font-size: 0.9375em; +} + +div.queryresult table tfoot th +{ + font-size: 0.8125em; + font-weight: normal; +} + +div.table table th, div.informaltable table th +{ + color: #3D8AC9; +} +div.table-contents td p span.strong strong +{ + color: #333333; +} + +div.informaltable span.strong strong +{ + font-weight: normal; + font-style: italic; +} + +div.informalfigure a img, div.figure a img +{ + border: none; +} + +/* additional styles for slides */ + +div.slide h1 +{ + margin-top: 40px; + margin-bottom: 1em; + color: white; + border-bottom: none; +} + +div.slide p, div.slide li +{ + font-size: 1.25em; +} + +.navfooter{ + background: #0b75bc; + border: 1px solid #0b75bc; + border-top: 1px solid #3c91c9; +} + +.navfooter a { + color: #fff; + color: rgba(255,255,255,0.8); + text-decoration: none; + text-shadow: none; + font-family: Helvetica, Arial, sans-serif; +} + +h1 { font-size: 1.8em; margin-bottom: 1em; } +h2 { font-size: 1.6em; margin-bottom: 1em; } +h3 { font-size: 1.4em; margin-bottom: 1em; } +h4 { font-size: 1.2em; margin-bottom: 0.5em; } +h5 { font-size: 1em; margin-bottom: 0.5em; } + +.devstatus-code-none { + border: solid black 2px; + margin-right: 5px !important; + display: block; + float: right; + width: 4em; + font-size: 10pt !important; + font-weight: bolder; + font-family: "Courier New", "Courier", monospace !important; + background-color: #f08080; + text-align: center; + text-shadow: none !important; +} + +.devstatus-code-early { + border: solid black 2px; + margin-right: 5px !important; + display: block; + float: right; + width: 4em; + font-size: 10pt !important; + font-weight: bolder; + font-family: "Courier New", "Courier", monospace !important; + background-color: orange; + text-align: center; + text-shadow: none !important; +} +.devstatus-code-beta { + border: solid black 2px; + margin-right: 5px !important; + display: block; + float: right; + width: 4em; + font-size: 10pt !important; + font-weight: bold; + font-family: "Courier New", "Courier", monospace !important; + background-color: yellow; + text-align: center; + text-shadow: none !important; +} +.devstatus-code-stable { + border: solid black 2px; + margin-right: 5px !important; + display: block; + float: right; + width: 4em; + font-size: 10pt !important; + font-weight: bolder; + font-family: "Courier New", "Courier", monospace !important; + background-color: #adff2f; + text-align: center; + text-shadow: none !important; +} +.devstatus-code-mature { + border: solid black 2px; + margin-right: 5px !important; + display: block; + float: right; + width: 4em; + font-size: 10pt !important; + font-weight: bolder; + font-family: "Courier New", "Courier", monospace !important; + background-color: #7cfc00; + text-align: center; + text-shadow: none !important; +} + +.devstatus-docs-none { + border: solid black 2px; + margin-right: 5px !important; + display: block; + float: right; + width: 4em; + font-size: 10pt !important; + font-weight: bolder; + font-family: "Courier New", "Courier", monospace !important; + background-color: #f08080; + text-align: center; + text-shadow: none !important; +} + +.devstatus-docs-brief { + border: solid black 2px; + margin-right: 5px !important; + display: block; + float: right; + width: 4em; + font-size: 10pt !important; + font-weight: bolder; + font-family: "Courier New", "Courier", monospace !important; + background-color: yellow; + text-align: center; + text-shadow: none !important; +} +.devstatus-docs-good { + border: solid black 2px; + margin-right: 5px !important; + display: block; + float: right; + width: 4em; + font-size: 10pt !important; + font-weight: bolder; + font-family: "Courier New", "Courier", monospace !important; + background-color: #adff2f; + text-align: center; + text-shadow: none !important; +} +.devstatus-docs-complete { + border: solid black 2px; + margin-right: 5px !important; + display: block; + float: right; + width: 4em; + font-size: 10pt !important; + font-weight: bolder; + font-family: "Courier New", "Courier", monospace !important; + background-color: #7cfc00; + text-align: center; + text-shadow: none !important; +} + +.devstatus-tests-none { + border: solid black 2px; + margin-right: 5px !important; + display: block; + float: right; + width: 4em; + font-size: 10pt !important; + font-weight: bolder; + font-family: "Courier New", "Courier", monospace !important; + background-color: #f08080; + text-align: center; + text-shadow: none !important; +} + +.devstatus-tests-some { + border: solid black 2px; + margin-right: 5px !important; + display: block; + float: right; + width: 4em; + + font-size: 10pt !important; + font-weight: bolder; + font-family: "Courier New", "Courier", monospace !important; + background-color: yellow; + text-align: center; + text-shadow: none !important; +} +.devstatus-tests-good { + border: solid black 2px; + margin-right: 5px !important; + display: block; + float: right; + width: 4em; + font-size: 10pt !important; + font-weight: bolder; + font-family: "Courier New", "Courier", monospace !important; + background-color: #adff2f; + text-align: center; + text-shadow: none !important; +} + +.devstatus-tests-complete { + border: solid black 2px; + margin-right: 5px !important; + display: block; + float: right; + width: 4em; + font-size: 10pt !important; + font-weight: bolder; + font-family: "Courier New", "Courier", monospace !important; + background-color: #7cfc00; + text-align: center; + text-shadow: none !important; +} + + +.section .variablelist dt .term { + font-weight: bolder; + font-family: Consolas, Monaco, monospace; + background: #DEDEDE; +} http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/manual/src/docs/website/resources/css/zest.css ---------------------------------------------------------------------- diff --git a/manual/src/docs/website/resources/css/zest.css b/manual/src/docs/website/resources/css/zest.css deleted file mode 100644 index d512429..0000000 --- a/manual/src/docs/website/resources/css/zest.css +++ /dev/null @@ -1,825 +0,0 @@ -/* - * 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 agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * - */ - -span.remark -{ - background: yellow; -} - -td p -{ - margin: 0.125em 0; -} - -#disqus_thread -{ - max-width: 40em; -} - -body #toolbar_item command_help -{ - /* display: none !important; */ -} - -pre { - max-width: 55em; - overflow: scroll; -} - -.syntaxhighlighter a, -.syntaxhighlighter div, -.syntaxhighlighter code, -.syntaxhighlighter table, -.syntaxhighlighter table td, -.syntaxhighlighter table tr, -.syntaxhighlighter table tbody, -.syntaxhighlighter table thead, -.syntaxhighlighter table caption, -.syntaxhighlighter textarea -{ - font-size: 12px !important; - font-family: Consolas, Monaco, "Bitstream Vera Sans Mono", monospace !important; - line-height: 14px !important; -} - -.syntaxhighlighter { - background-color: rgba(11,117,188,0.1) !important; - /* - overflow: visible !important; - */ - border: 1px solid #0b75bc; - padding: 8px; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; - border-radius: 5px; -} - -.syntaxhighlighter .line.alt1 { - background-color: rgba(11,117,188,0.05) !important; -} -.syntaxhighlighter .line.alt2 { - background-color: rgba(11,117,188,0.1) !important; -} - -html -{ - text-align: center; -} - -html body -{ - background: url("bg.png"); - margin: 0 auto; - text-align: left; -} - -div.navheader, div.navfooter { - padding: 0 5%; -} - -body, div.navheader th, div.navheader td, div.navfooter td -{ - font-family: Georgia, "Times New Roman", Times, serif; - color: #4c4c4c; -} - -a { - color: #0b75bc; -} - -a:hover { - text-decoration: none; -} - -a:visited { - color: #0b75bc; - /* color: #08568a; */ -} - -hr { - border-color: #0b75bc; - border-style: solid; -} - -.navheader a { - color: #acacac; - text-decoration: none; - font-family: Helvetica, Arial, sans-serif; -} - -.navheader a:hover, .navfooter a:hover { - text-decoration: underline; -} - -h1, h2, h3, h4, h5, h6, -div.toc p b, -div.important th, div.info th, div.tip th, -div.warning th, div.note th, div.caution th, -p.legalnotice-title, -div.refnamediv p, -div.sidebar p.title, -th, -div.table-contents td p span.strong strong, -tr.question td b p -{ - color: #0b75bc; - font-family: Helvetica, Arial, sans-serif; - text-shadow: 0 1px 0 #fff; -} - - -.book, .chapter, .part { - width:90%; - margin: 0 auto; -} - -td p strong -{ - font-size: 1.067em; -} - -tr.question td b p -{ - font-size: 1em; - margin: 0.5em 0 0 0; -} - -tr.question td -{ - padding: 0; -} - -tr.answer td, tr.answer td p -{ - padding-top: 0; -} - -tr.answer td -{ - padding-left: 1em; -} - -div.navheader -{ - height: 50px; - background: url(../../../../resources/css/navHead_bg.png) repeat-x; -} - -div.navheader hr -{ - display: none; -} - -div.refentry body h2.title, div.refentry body h1.title, div.refentry div.refnamediv p, -body > div.section h1, body > div.section h2, -body > div.part h1, body > div.part h2, -body > div.chapter h1, body > div.chapter h2, -body > div.book h1, -body > div.preface h2, -body > div.appendix h2 -{ - border-bottom: none; - margin-top: 2.2em; - margin-bottom: .7em; -} - -div.legalnotice -{ - padding-top: 3em; -} - -p.legalnotice-title b -{ - font-size: 1.5em; - font-style: normal; - font-weight: bold; -} - -p.legalnotice-title -{ - margin-bottom: 2em; -} - -body > div.book h1.title -{ - margin-top: 0.5em; - padding-top: 0; - margin-bottom: 0; -} - -div.part h1.title -{ - margin-top: 1.5em; -} - -.book div.titlepage { - position: absolute; - top: 40px; - background: url(logo.png) no-repeat left top; - min-height: 250px; - padding-left: 150px; -} - -.book div.titlepage .authorgroup { - font-size: 150%; -} - -.book div.titlepage hr { - display: none; -} - -div.titlepage h3.corpauthor -{ -} - -div.refnamediv -{ - padding-top: 24px; - margin-bottom: 24px; -} - -div.refsynopsisdiv h2, div.refsect1 h2 -{ - border-bottom: none; -} - -div.titlepage h3.corpauthor a.ulink, div.titlepage h3.corpauthor a.ulink:link, -div.titlepage h3.corpauthor a.ulink:visited, div.titlepage h3.corpauthor a.ulink:hover -div.titlepage h3.corpauthor a.ulink:focus, div.titlepage h3.corpauthor a.ulink:active -{ - color: #dddddd; - text-decoration: none; - font-style: normal; - padding-left: 0.6em; -} - -div.refnamediv h2 -{ - display: none; -} - -div.refnamediv p -{ - font-size: 1em; - font-weight: bold; - margin-top: 3em; - margin-bottom: 2em; - width: 60%; - line-height: 1.2; -} - -p, li, dt, div.navheader th, div.navheader td, div.navfooter td -{ - font-family: Georgia, "Times New Roman", Times, serif; - font-size: .9375em; - text-shadow: 0 1px 0 #fff; -} - -p, ul, ol -{ - margin-top: 0; - margin-bottom: 1em; -} - -li p -{ - margin-bottom: 0.5em; -} - -div.list-of-figures p, div.list-of-tables p -{ - margin-top: 1.5em; -} - -div.list-of-figures p b, div.list-of-tables p b, div.sidebar p b -{ - font-style: normal; - font-weight: bold; -} - -div.toc -{ - margin-bottom: 1em; -} - -.book .toc { - margin-top: 220px; -} - -div.toc p { - width: 100%; - font-family: Helvetica, Arial, sans-serif; - color: #0b75bc; - font-size: 120%; - border-bottom: 1px solid #0b75bc; -} - -div.toc a, div.toc a:visited { - color: #0b75bc; -} - -div.toc dt { - margin-bottom: 8px; -} - -div.toc dl dl { - margin: 5px 0; -} - -p.copyright -{ - margin: 0; - padding: 10px 0 5px 0; - text-align: center; - max-width: 100%; - background: #0b75bc url(../../../../resources/css/copyright_bg.png) repeat-x top; - color: #fff; - text-shadow: none; - border-bottom: 1px solid #095e96; -} - -.titlepage p.copyright { - background: none; - border: none; - text-align: left; - color: #0b75bc; -} - -code.literal -{ - font-family: Consolas, Monaco, monospace; - font-size: .9375em; -} - -td code.literal -{ - font-size: .8em; -} - -li -{ - line-height: 1.3em; -} - -p -{ - line-height: 1.6em; -} - -.toc p { - max-width: 100%; -} - -ul, ol -{ - max-width: 38em; -} - -div.sidebar -{ - max-width: 30em; - padding: 0.67em 1em; - background: #c1d5d9 url("../../../../resources/css/content-bg.png") repeat-x; -} - -div.sidebar p.title -{ - margin: 0; -} - -div.sidebar ul -{ - margin-top: 0.3em; - margin-bottom: 0.3em; -} - -p b, div.figure p.title b, div.table p.title b -{ - font-style: italic; - font-weight: normal; -} - -/* BEGIN SIDE NOTES */ -div.important, div.info, div.tip, div.note, -div.warning, div.caution -{ - float: right; - max-width: 20em; - margin: 1em 0 1em 1em !important; - padding: 1em !important; - font-size: 0.9em; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; - border-radius: 5px; -} -div.important, div.info, div.tip, div.note -{ - background-color: rgba(11, 117, 188, 0.1) !important; - border: 1px solid #0b75bc; -} -div.warning -{ - background-color: rgba(188, 117, 11, 0.1) !important; - border: 1px solid #bc750b; -} -div.caution -{ - background-color: rgba(188, 11, 11, 0.1) !important; - border: 1px solid #bc0b0b; -} -div.important h3, div.info h3, div.tip h3, div.note h3, -div.warning h3, div.caution h3 -{ - margin: 0 0 0.5em 0 !important; - line-height: 50px; - padding-right: 55px; - background-position: top right !important; - background-repeat: no-repeat !important; -} -div.important h3 -{ - background-image: url("important.png"); -} -div.info h3, div.tip h3 -{ - background-image: url("tip.png"); -} -div.note h3 -{ - background-image: url("note.png"); -} -div.warning h3 -{ - background-image: url("warning.png"); - color: #bc750b; -} -div.caution h3 -{ - background-image: url("caution.png"); - color: #bc0b0b; -} -div.important p, div.info p, div.tip p, div.note p, -div.warning p, div.caution p -{ - margin: 0 0 0.5em 0 !important; -} -/* END SIDE NOTES */ - - -div.table, div.informaltable -{ - width: 100%; - clear: both; -} -div.table div.table-contents, div.informaltable div.table-contents -{ - background-color: rgba(11,117,188,0.1) !important; - border: 1px solid #0b75bc; - padding: 8px; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; - border-radius: 5px; -} - -div.table table, div.informaltable table -{ - width: 100%; - border: none; - border-collapse: collapse; -} - -td, th -{ - padding: 2px 4px; -} - -div.table table, div.informaltable table, -div.table table th, div.informaltable table th, -div.table table td, div.informaltable table td, -div.table table tr, div.informaltable table tr, -div.table table tbody, div.informaltable table tbody, -div.table table thead, div.informaltable table thead, -div.table table tfoot, div.informaltable table tfoot -{ - font-size: 15px; - text-align: center; -} -div.table table td, -div.informaltable table td, -div.table table th, -div.informaltable table th -{ - border: 1px solid #3D8AC9; -} -div.table table tr:first-child th, -div.informaltable table tr:first-child th -{ - border-top: 0; -} -div.table table tr:last-child td, -div.informaltable table tr:last-child td -{ - border-bottom: 0; -} -div.table table tr td:first-child, -div.informaltable table tr td:first-child, -div.table table tr th:first-child, -div.informaltable table tr th:first-child -{ - border-left: 0; -} -div.table table tr td:last-child, -div.informaltable table tr td:last-child, -div.table table tr th:last-child, -div.informaltable table tr th:last-child -{ - border-right: 0; -} - -div.queryresult table tbody td p code.literal -{ - color: #000000; -} - -div.queryresult table thead tr, -div.queryresult table tfoot tr -{ - background: #cad9dc; -} - -div.queryresult table tbody -{ - background: #d1dee1; -} - -div.queryresult table tbody tr.evenresult -{ - background: #dfe8eb; -} - -div.queryresult table thead th -{ - font-size: 0.9375em; -} - -div.queryresult table tfoot th -{ - font-size: 0.8125em; - font-weight: normal; -} - -div.table table th, div.informaltable table th -{ - color: #3D8AC9; -} -div.table-contents td p span.strong strong -{ - color: #333333; -} - -div.informaltable span.strong strong -{ - font-weight: normal; - font-style: italic; -} - -div.informalfigure a img, div.figure a img -{ - border: none; -} - -/* additional styles for slides */ - -div.slide h1 -{ - margin-top: 40px; - margin-bottom: 1em; - color: white; - border-bottom: none; -} - -div.slide p, div.slide li -{ - font-size: 1.25em; -} - -.navfooter{ - background: #0b75bc; - border: 1px solid #0b75bc; - border-top: 1px solid #3c91c9; -} - -.navfooter a { - color: #fff; - color: rgba(255,255,255,0.8); - text-decoration: none; - text-shadow: none; - font-family: Helvetica, Arial, sans-serif; -} - -h1 { font-size: 1.8em; margin-bottom: 1em; } -h2 { font-size: 1.6em; margin-bottom: 1em; } -h3 { font-size: 1.4em; margin-bottom: 1em; } -h4 { font-size: 1.2em; margin-bottom: 0.5em; } -h5 { font-size: 1em; margin-bottom: 0.5em; } - -.devstatus-code-none { - border: solid black 2px; - margin-right: 5px !important; - display: block; - float: right; - width: 4em; - font-size: 10pt !important; - font-weight: bolder; - font-family: "Courier New", "Courier", monospace !important; - background-color: #f08080; - text-align: center; - text-shadow: none !important; -} - -.devstatus-code-early { - border: solid black 2px; - margin-right: 5px !important; - display: block; - float: right; - width: 4em; - font-size: 10pt !important; - font-weight: bolder; - font-family: "Courier New", "Courier", monospace !important; - background-color: orange; - text-align: center; - text-shadow: none !important; -} -.devstatus-code-beta { - border: solid black 2px; - margin-right: 5px !important; - display: block; - float: right; - width: 4em; - font-size: 10pt !important; - font-weight: bold; - font-family: "Courier New", "Courier", monospace !important; - background-color: yellow; - text-align: center; - text-shadow: none !important; -} -.devstatus-code-stable { - border: solid black 2px; - margin-right: 5px !important; - display: block; - float: right; - width: 4em; - font-size: 10pt !important; - font-weight: bolder; - font-family: "Courier New", "Courier", monospace !important; - background-color: #adff2f; - text-align: center; - text-shadow: none !important; -} -.devstatus-code-mature { - border: solid black 2px; - margin-right: 5px !important; - display: block; - float: right; - width: 4em; - font-size: 10pt !important; - font-weight: bolder; - font-family: "Courier New", "Courier", monospace !important; - background-color: #7cfc00; - text-align: center; - text-shadow: none !important; -} - -.devstatus-docs-none { - border: solid black 2px; - margin-right: 5px !important; - display: block; - float: right; - width: 4em; - font-size: 10pt !important; - font-weight: bolder; - font-family: "Courier New", "Courier", monospace !important; - background-color: #f08080; - text-align: center; - text-shadow: none !important; -} - -.devstatus-docs-brief { - border: solid black 2px; - margin-right: 5px !important; - display: block; - float: right; - width: 4em; - font-size: 10pt !important; - font-weight: bolder; - font-family: "Courier New", "Courier", monospace !important; - background-color: yellow; - text-align: center; - text-shadow: none !important; -} -.devstatus-docs-good { - border: solid black 2px; - margin-right: 5px !important; - display: block; - float: right; - width: 4em; - font-size: 10pt !important; - font-weight: bolder; - font-family: "Courier New", "Courier", monospace !important; - background-color: #adff2f; - text-align: center; - text-shadow: none !important; -} -.devstatus-docs-complete { - border: solid black 2px; - margin-right: 5px !important; - display: block; - float: right; - width: 4em; - font-size: 10pt !important; - font-weight: bolder; - font-family: "Courier New", "Courier", monospace !important; - background-color: #7cfc00; - text-align: center; - text-shadow: none !important; -} - -.devstatus-tests-none { - border: solid black 2px; - margin-right: 5px !important; - display: block; - float: right; - width: 4em; - font-size: 10pt !important; - font-weight: bolder; - font-family: "Courier New", "Courier", monospace !important; - background-color: #f08080; - text-align: center; - text-shadow: none !important; -} - -.devstatus-tests-some { - border: solid black 2px; - margin-right: 5px !important; - display: block; - float: right; - width: 4em; - - font-size: 10pt !important; - font-weight: bolder; - font-family: "Courier New", "Courier", monospace !important; - background-color: yellow; - text-align: center; - text-shadow: none !important; -} -.devstatus-tests-good { - border: solid black 2px; - margin-right: 5px !important; - display: block; - float: right; - width: 4em; - font-size: 10pt !important; - font-weight: bolder; - font-family: "Courier New", "Courier", monospace !important; - background-color: #adff2f; - text-align: center; - text-shadow: none !important; -} - -.devstatus-tests-complete { - border: solid black 2px; - margin-right: 5px !important; - display: block; - float: right; - width: 4em; - font-size: 10pt !important; - font-weight: bolder; - font-family: "Courier New", "Courier", monospace !important; - background-color: #7cfc00; - text-align: center; - text-shadow: none !important; -} - - -.section .variablelist dt .term { - font-weight: bolder; - font-family: Consolas, Monaco, monospace; - background: #DEDEDE; -} http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/manual/src/resources/images/polygene-blue.png ---------------------------------------------------------------------- diff --git a/manual/src/resources/images/polygene-blue.png b/manual/src/resources/images/polygene-blue.png new file mode 100644 index 0000000..6918246 Binary files /dev/null and b/manual/src/resources/images/polygene-blue.png differ http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/manual/src/resources/images/zest-blue.png ---------------------------------------------------------------------- diff --git a/manual/src/resources/images/zest-blue.png b/manual/src/resources/images/zest-blue.png deleted file mode 100644 index 6918246..0000000 Binary files a/manual/src/resources/images/zest-blue.png and /dev/null differ http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/tools/qidea/src/main/java/org/apache/zest/ide/plugin/idea/appliesTo/common/PolygeneAppliesToConstants.java ---------------------------------------------------------------------- diff --git a/tools/qidea/src/main/java/org/apache/zest/ide/plugin/idea/appliesTo/common/PolygeneAppliesToConstants.java b/tools/qidea/src/main/java/org/apache/zest/ide/plugin/idea/appliesTo/common/PolygeneAppliesToConstants.java new file mode 100644 index 0000000..e50589d --- /dev/null +++ b/tools/qidea/src/main/java/org/apache/zest/ide/plugin/idea/appliesTo/common/PolygeneAppliesToConstants.java @@ -0,0 +1,33 @@ +/* + * 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 agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. +*/ + +package org.apache.polygene.ide.plugin.idea.appliesTo.common; + +/** + * @author [email protected] + * @since 0.1 + */ +public final class PolygeneAppliesToConstants +{ + public static final String QUALIFIED_NAME_APPLIES_TO = "org.apache.polygene.api.common.AppliesTo"; + public static final String QUALIFIED_NAME_APPLIES_TO_FILTER = "org.apache.polygene.api.common.AppliesToFilter"; + + private PolygeneAppliesToConstants() + { + } +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/tools/qidea/src/main/java/org/apache/zest/ide/plugin/idea/appliesTo/common/PolygeneAppliesToUtil.java ---------------------------------------------------------------------- diff --git a/tools/qidea/src/main/java/org/apache/zest/ide/plugin/idea/appliesTo/common/PolygeneAppliesToUtil.java b/tools/qidea/src/main/java/org/apache/zest/ide/plugin/idea/appliesTo/common/PolygeneAppliesToUtil.java new file mode 100644 index 0000000..fd56b6b --- /dev/null +++ b/tools/qidea/src/main/java/org/apache/zest/ide/plugin/idea/appliesTo/common/PolygeneAppliesToUtil.java @@ -0,0 +1,138 @@ +/* + * 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 agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. +*/ + +package org.apache.polygene.ide.plugin.idea.appliesTo.common; + +import com.intellij.openapi.project.Project; +import com.intellij.psi.*; +import com.intellij.psi.search.GlobalSearchScope; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.Collections; +import java.util.List; + +import static com.intellij.codeInsight.AnnotationUtil.findAnnotation; +import static java.util.Collections.emptyList; +import static org.apache.polygene.ide.plugin.idea.appliesTo.common.PolygeneAppliesToConstants.QUALIFIED_NAME_APPLIES_TO; +import static org.apache.polygene.ide.plugin.idea.appliesTo.common.PolygeneAppliesToConstants.QUALIFIED_NAME_APPLIES_TO_FILTER; +import static org.apache.polygene.ide.plugin.idea.common.psi.PsiAnnotationUtil.getAnnotationDefaultParameterValue; +import static org.apache.polygene.ide.plugin.idea.common.psi.PsiAnnotationUtil.getClassReference; +import static org.apache.polygene.ide.plugin.idea.common.psi.PsiClassUtil.getPSIClass; +import static org.apache.polygene.ide.plugin.idea.common.psi.search.GlobalSearchScopeUtil.determineSearchScope; + +/** + * @author [email protected] + * @since 0.1 + */ +public final class PolygeneAppliesToUtil +{ + /** + * @param searchContext Search context. + * @return {@code AppliesToFilter} class given the search context. {@code null} if not found. + * @since 0.1 + */ + @Nullable + public static PsiClass getAppliesToFilterClass( @NotNull PsiElement searchContext ) + { + Project project = searchContext.getProject(); + GlobalSearchScope searchScope = determineSearchScope( searchContext ); + return getAppliesToFilterClass( project, searchScope ); + } + + /** + * @param project project. + * @param scope search scope. + * @return {@code AppliesToFilter} class given {@code project} and {@code scope} parameters. + * Returns {@code null} if not found. + * @since 0.1 + */ + @Nullable + public static PsiClass getAppliesToFilterClass( @NotNull Project project, + @Nullable GlobalSearchScope scope ) + { + JavaPsiFacade psiFacade = JavaPsiFacade.getInstance( project ); + return scope == null ? null : psiFacade.findClass( QUALIFIED_NAME_APPLIES_TO_FILTER, scope ); + } + + /** + * @param elementWithinJavaClass element within java class. + * @return {@code @AppliesTo} annotation declaration of the class that contains the element. + * Returns {@code null} if not found, or {@code element} is an invalid context. + * @since 0.1 + */ + @Nullable + public static PsiAnnotation getAppliesToAnnotation( @NotNull PsiElement elementWithinJavaClass ) + { + PsiClass psiClass = getPSIClass( elementWithinJavaClass ); + return findAnnotation( psiClass, QUALIFIED_NAME_APPLIES_TO ); + } + + /** + * @param annotation annotation to process. + * @return {@code @AppliesTo} annotation value. Returns {@link Collections#emptyList()} if {@code annotation} is + * {@code null} or annotation is not a {@code @AppliesTo} annotation. + * @since 0.1 + */ + @NotNull + public static List<PsiAnnotationMemberValue> getAppliesToAnnotationValue( @Nullable PsiAnnotation annotation ) + { + if( annotation == null ) + { + return emptyList(); + } + + String concernsQualifiedName = annotation.getQualifiedName(); + if( !QUALIFIED_NAME_APPLIES_TO.equals( concernsQualifiedName ) ) + { + return emptyList(); + } + + return getAnnotationDefaultParameterValue( annotation ); + } + + /** + * @param value annotation member value. + * @return Applies to class reference given the {@code value} parameter. Returns {@code null} if it's not a + * class reference. + * @since 0.1 + */ + @Nullable + public static PsiJavaCodeReferenceElement getAppliesToValueClassReference( @NotNull PsiAnnotationMemberValue value ) + { + return getClassReference( value ); + } + + /** + * Returns a {@code boolean} indicator whether the specified {@code psiClass} is implements + * {@code AppliesToFilter} class. + * + * @param psiClass class to check. + * @param appliesToFilterClass {@code AppliesToFilter} class. + * @return {@code true} if {@code psiClass} implements {@code AppliesToFilter} class, {@code false} otherwise. + * @since 0.1 + */ + public static boolean isAnAppliesToFilter( @NotNull PsiClass psiClass, @NotNull PsiClass appliesToFilterClass ) + { + return !psiClass.isInterface() && psiClass.isInheritor( appliesToFilterClass, true ); + } + + private PolygeneAppliesToUtil() + { + } +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/zest-java/blob/b45402f2/tools/qidea/src/main/java/org/apache/zest/ide/plugin/idea/appliesTo/common/ZestAppliesToConstants.java ---------------------------------------------------------------------- diff --git a/tools/qidea/src/main/java/org/apache/zest/ide/plugin/idea/appliesTo/common/ZestAppliesToConstants.java b/tools/qidea/src/main/java/org/apache/zest/ide/plugin/idea/appliesTo/common/ZestAppliesToConstants.java deleted file mode 100644 index e50589d..0000000 --- a/tools/qidea/src/main/java/org/apache/zest/ide/plugin/idea/appliesTo/common/ZestAppliesToConstants.java +++ /dev/null @@ -1,33 +0,0 @@ -/* - * 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 agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. -*/ - -package org.apache.polygene.ide.plugin.idea.appliesTo.common; - -/** - * @author [email protected] - * @since 0.1 - */ -public final class PolygeneAppliesToConstants -{ - public static final String QUALIFIED_NAME_APPLIES_TO = "org.apache.polygene.api.common.AppliesTo"; - public static final String QUALIFIED_NAME_APPLIES_TO_FILTER = "org.apache.polygene.api.common.AppliesToFilter"; - - private PolygeneAppliesToConstants() - { - } -} \ No newline at end of file
