Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/develop' into decoupling_develop
Browse files Browse the repository at this point in the history
  • Loading branch information
sbesson committed Jul 2, 2015
2 parents bbf1be9 + b3a236c commit 686c157
Show file tree
Hide file tree
Showing 236 changed files with 67,278 additions and 1,323 deletions.
19 changes: 11 additions & 8 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,11 @@ project(openmicroscopy)

set_property(GLOBAL PROPERTY USE_FOLDERS ON)

include(components/tools/OmeroCpp/cmake/Version.cmake)
set(OMERO_CPP_DIR components/tools/OmeroCpp)
set(OMERO_CPP_SOURCE_DIR ${PROJECT_SOURCE_DIR}/${OMERO_CPP_DIR})
set(OMERO_CPP_BINARY_DIR ${PROJECT_BINARY_DIR}/${OMERO_CPP_DIR})

include(${OMERO_CPP_DIR}/cmake/Version.cmake)

if("${PROJECT_SOURCE_DIR}" STREQUAL "${PROJECT_BINARY_DIR}")
message(FATAL_ERROR "In-tree builds are not supported; please run cmake from a separate build directory.")
Expand All @@ -56,8 +60,7 @@ endif("${PROJECT_SOURCE_DIR}" STREQUAL "${PROJECT_BINARY_DIR}")
enable_language(CXX)

list(APPEND CMAKE_MODULE_PATH
"${PROJECT_SOURCE_DIR}/components/bioformats/cpp/cmake"
"${PROJECT_SOURCE_DIR}/components/tools/OmeroCpp/cmake")
"${OMERO_CPP_SOURCE_DIR}/cmake")

include(CheckIncludeFileCXX)
include(CheckCXXCompilerFlag)
Expand Down Expand Up @@ -117,13 +120,13 @@ else(NOT EXISTS ${PROJECT_SOURCE_DIR}/components/blitz/generated/omero/model/Ima
message(STATUS "C++ and Ice sources already generated; skipping running build.py")
endif(NOT EXISTS ${PROJECT_SOURCE_DIR}/components/blitz/generated/omero/model/Image.ice)

add_subdirectory(components/tools/OmeroCpp)
add_subdirectory(${OMERO_CPP_DIR})
add_subdirectory(examples)

set(LIBRARY_PREFIX OME)
configure_file(${PROJECT_SOURCE_DIR}/components/bioformats/cpp/cmake/TemplateShellConfig.cmake.in
${PROJECT_BINARY_DIR}/config)
configure_file(${OMERO_CPP_SOURCE_DIR}/cmake/TemplateShellConfig.cmake.in
${PROJECT_BINARY_DIR}/config @ONLY)
if(WIN32)
configure_file(${PROJECT_SOURCE_DIR}/components/bioformats/cpp/cmake/TemplateCmdConfig.cmake.in
${PROJECT_BINARY_DIR}/config.bat)
configure_file(${OMERO_CPP_SOURCE_DIR}/cmake/TemplateCmdConfig.cmake.in
${PROJECT_BINARY_DIR}/config.bat @ONLY)
endif()
3 changes: 3 additions & 0 deletions build.xml
Original file line number Diff line number Diff line change
Expand Up @@ -632,6 +632,9 @@ To get started using Eclipse, execute "./build.py build-dev" and import the top-
</fileset>
</classpath>

<fileset dir="components/model/" defaultexcludes="yes">
<patternset refid="all.java.files"/>
</fileset>
<fileset dir="components/common/" defaultexcludes="yes">
<patternset refid="all.java.files"/>
</fileset>
Expand Down
348 changes: 7 additions & 341 deletions components/blitz/resources/ome/services/blitz-graph-rules.xml

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -358,6 +358,14 @@
<constructor-arg ref="systemTypes"/>
<constructor-arg ref="graphPathBean"/>
<constructor-arg ref="ome.services.delete.Deletion"/>
<constructor-arg>
<map>
<entry key="omero.cmd.graphs.Chgrp2I" value-ref="chgrpTargets"/>
<entry key="omero.cmd.graphs.Chmod2I" value-ref="chmodTargets"/>
<entry key="omero.cmd.graphs.Chown2I" value-ref="chownTargets"/>
<entry key="omero.cmd.graphs.Delete2I" value-ref="deleteTargets"/>
</map>
</constructor-arg>
<constructor-arg>
<map>
<entry key="omero.cmd.graphs.Chgrp2I" value-ref="chgrpRules"/>
Expand All @@ -367,10 +375,7 @@
</map>
</constructor-arg>
<constructor-arg>
<list>
<value>Image.fileset</value>
<value>Image.instrument</value>
</list>
<list/> <!-- unnullable not presently required -->
</constructor-arg>
<constructor-arg>
<set>
Expand Down

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
<?xml version="1.0" encoding="UTF-8"?>

<!--
#
# Copyright (C) 2015 University of Dundee & Open Microscopy Environment.
# All rights reserved.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
-->

<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:util="http://www.springframework.org/schema/util"
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-3.0.xsd
http://www.springframework.org/schema/util
http://www.springframework.org/schema/util/spring-util-2.0.xsd">

<util:list id="chmodTargets" value-type="java.lang.String">

<!-- core -->
<value>ExperimenterGroup</value>

</util:list>

<util:list id="chmodRules" value-type="ome.services.graphs.GraphPolicyRule">

<!-- see blitz-graph-rules.xml for rule syntax -->

<bean parent="graphPolicyRule" p:matches="L:ILink.parent = X:[E]/!d, L.child = T:TagAnnotation[D]"
p:error="may not delete {T} because {X} is tagged with it"/>
<bean parent="graphPolicyRule" p:matches="G:IGlobal[E]" p:changes="G:[O]"/>
<bean parent="graphPolicyRule" p:matches="X:[E].details.group = ExperimenterGroup[I]" p:changes="X:[-]"/>
<bean parent="graphPolicyRule" p:matches="L:ILink[E].parent =/!o [E], L.child = C:[E]" p:changes="L:[D]/n, C:{r}"/>
<bean parent="graphPolicyRule" p:matches="L:ILink[E].parent = [E], L.child =/!o C:[E]" p:changes="L:[D]/n, C:{r}"/>
<bean parent="graphPolicyRule" p:matches="L:ILink[D].child = C:BooleanAnnotation[E]{o}" p:changes="C:[D]/n"/>
<bean parent="graphPolicyRule" p:matches="L:ILink[D].child = C:CommentAnnotation[E]{o}" p:changes="C:[D]/n"/>
<bean parent="graphPolicyRule" p:matches="L:ILink[D].child = C:NumericAnnotation[E]{o}" p:changes="C:[D]/n"/>
<bean parent="graphPolicyRule" p:matches="L:ILink[D].child = C:TimestampAnnotation[E]{o}" p:changes="C:[D]/n"/>
<bean parent="graphPolicyRule" p:matches="L:ILink[D].child = C:XmlAnnotation[E]{o}" p:changes="C:[D]/n"/>
<bean parent="graphPolicyRule" p:matches="R:Roi[E].image =/!o [E]" p:changes="R:[D]/n"/>
<bean parent="graphPolicyRule" p:matches="RD:RenderingDef[E].pixels =/!o [E]" p:changes="RD:[D]/n"/>
<bean parent="graphPolicyRule" p:matches="T:Thumbnail[E].pixels =/!o [E]" p:changes="T:[D]/n"/>
<bean parent="graphPolicyRule" p:matches="R:Roi[D]/!no.image = [!O]/o" p:changes="R:[D]/n"/>
<bean parent="graphPolicyRule" p:matches="RD:RenderingDef[D]/!no.pixels = [!O]/o" p:changes="RD:[D]/n"/>
<bean parent="graphPolicyRule" p:matches="T:Thumbnail[D]/!no.pixels = [!O]/o" p:changes="T:[D]/n"/>
<bean parent="graphPolicyRule" p:matches="[D] =? X:!ILink[E]{o}/d" p:changes="X:[D]"/>
<bean parent="graphPolicyRule" p:matches="[D] =?/o X:!ILink[E]{o}" p:changes="X:[D]"/>
<bean parent="graphPolicyRule" p:matches="L:ILink[!DO].parent = [D], L.child = C:!Job[E]/!d" p:changes="L:[D]/n"/>
<bean parent="graphPolicyRule" p:matches="L:ILink.parent = [D], L.child = C:[E]{o}/d" p:changes="C:[D]"/>
<bean parent="graphPolicyRule" p:matches="L:ILink.parent = [D], L.child = C:Job[E]{o}" p:changes="C:[D]"/>
<bean parent="graphPolicyRule" p:matches="L:ILink[E].parent = [E], L.child = C:[D]" p:changes="L:[D]/n"/>
<bean parent="graphPolicyRule" p:matches="L:ILink[!D].parent = [D], L.child = [D]" p:changes="L:[D]/n"/>
<bean parent="graphPolicyRule" p:matches="L:ILink[!D].parent = [D], L.child = [E]{a}" p:changes="L:[D]/n"/>
<bean parent="graphPolicyRule" p:matches="L:ILink[!O]" p:changes="L:[-]"/>
<bean parent="graphPolicyRule" p:matches="I:Image[E]{!a}.rois = [D]" p:changes="I:{a}"/>
<bean parent="graphPolicyRule" p:matches="I:Image[E]{!a}.stageLabel = [D]" p:changes="I:{a}"/>
<bean parent="graphPolicyRule" p:matches="P:Pixels[E]{!a}.channels = [D]" p:changes="P:{a}"/>
<bean parent="graphPolicyRule" p:matches="P:Pixels[E]{!a}.settings = [D]" p:changes="P:{a}"/>
<bean parent="graphPolicyRule" p:matches="P:Pixels[E]{!a}.relatedTo = [D]" p:changes="P:{a}"/>
<bean parent="graphPolicyRule" p:matches="!ILink[D] == X:!IGlobal[E]{o}/d" p:changes="X:[D]"/>
<bean parent="graphPolicyRule" p:matches="!ILink[D] = X:[E]{i}" p:changes="X:{r}"/>
<bean parent="graphPolicyRule" p:matches="!ILink[E]{r} = X:[E]{i}" p:changes="X:{r}"/>
<bean parent="graphPolicyRule" p:matches="L:ILink.parent = [D], L.child = C:[E]{i}" p:changes="C:{r}"/>
<bean parent="graphPolicyRule" p:matches="DS:DetectorSettings[E]{i}.detector = [E]{r}" p:changes="DS:{r}"/>
<bean parent="graphPolicyRule" p:matches="LS:LightSettings[E]{i}.lightSource = [E]{r}" p:changes="LS:{r}"/>
<bean parent="graphPolicyRule" p:matches="OS:ObjectiveSettings[E]{i}.objective = [E]{r}" p:changes="OS:{r}"/>
<bean parent="graphPolicyRule" p:matches="X:!ILink[E]/d == [D]" p:changes="X:[D]"/>
<bean parent="graphPolicyRule" p:matches="X:!ILink[E]/!d == [D]" p:changes="X:[D]/n"/>
<bean parent="graphPolicyRule" p:matches="FA:FileAnnotation[E].file = [D]" p:changes="FA:[D]"/>
<bean parent="graphPolicyRule" p:matches="L:ILink[!D].child = C:!Job[E]{r}/!d" p:changes="C:{a}"/>
<bean parent="graphPolicyRule" p:matches="A:FileAnnotation[E]{r}/!o" p:changes="A:{a}"/>
<bean parent="graphPolicyRule" p:matches="A:TagAnnotation[E]{r}/!o" p:changes="A:{a}"/>
<bean parent="graphPolicyRule" p:matches="A:TermAnnotation[E]{r}/!o" p:changes="A:{a}"/>
<bean parent="graphPolicyRule" p:matches="L:ILink[!D].parent = [E], L.child = C:!Pixels[E]{r}" p:changes="C:{a}"/>
<bean parent="graphPolicyRule" p:matches="!ILink[E]{ia} = X:!ILink[E]{r}" p:changes="X:{a}"/>
<bean parent="graphPolicyRule" p:matches="X:[E]{r} == [E]{a}" p:changes="X:{a}"/>
<bean parent="graphPolicyRule" p:matches="L:ILink[E]{a}.parent = [D]" p:changes="L:[D]/n"/>
<bean parent="graphPolicyRule" p:matches="C:Channel[E]{r}.pixels = Pixels[E]{i}" p:changes="C:{a}"/>
</util:list>

</beans>
Loading

0 comments on commit 686c157

Please sign in to comment.