All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.atlasmap.core.DefaultAtlasFieldActionService.class Maven / Gradle / Ivy

Go to download

A single aggregated bundle which contains all AtlasMap library artifacts including modules.

There is a newer version: 2.5.2
Show newest version
????4
??	??
 ??
?	???
?	??	??
 ?
??
??
??
?????

??
	

		??

?
%? 
%!
?"
%#
?$
?%?&
?'(
)*+
1?
?,
1-
),
1.//
10/1
12/3
14/5	67	89
1:	8;	8<=
?>?
@A
1B
1CD
EEF
1G
@H
?I
1JKL
PEMN
1,OP
WQR
)ST
%UV
)W
?XYZ
)[
\
)]
?^
?_
`,a
?b
)cY1	?d	8e
)f
gh
?ijk
qEl
tm
?n	6op	6q	?rst	6u	?v	6w		x
6y
?z{?|
}~
}??
???
??
)??
??
??
??
??
?0
??
????
??
??	??
???
??
??
)?
 #??
?????????
?????
????????
?????
??
????
?,
???
1?
1??????	??
???t
1?
?b
??
??
?	??
???
???
??
????????
??
??
?
???
]?
??	??
??
1?
???????x?
??
??
???
???
??
??
??	??	??	??	??	??	??	??
??
???
??
???
??????????
????????InnerClassesActionProcessorLOGLorg/slf4j/Logger;actionProcessorsLjava/util/List;	SignatureSLjava/util/List;actionProcessorsLock*Ljava/util/concurrent/locks/ReadWriteLock;conversionService(Lio/atlasmap/spi/AtlasConversionService;actionResolverLio/atlasmap/v2/ActionResolver;listClassesLjava/util/Set;#Ljava/util/Set;
mapClasses+(Lio/atlasmap/spi/AtlasConversionService;)VCodeLineNumberTableLocalVariableTablethis1Lio/atlasmap/core/DefaultAtlasFieldActionService;init()VjavaTypeC(Ljava/lang/reflect/Type;)Lcom/fasterxml/jackson/databind/JavaType;typeLjava/lang/reflect/Type;(Ljava/lang/ClassLoader;)VclassLoaderLjava/lang/ClassLoader;	writeLock!Ljava/util/concurrent/locks/Lock;
StackMapTable?jloadFieldActions()Ljava/util/List;U()Ljava/util/List;)(Ljava/lang/ClassLoader;)Ljava/util/List;fieldActionServiceLoaderLjava/util/ServiceLoader;compatanswerLocalVariableTypeTable=Ljava/util/ServiceLoader;=Ljava/util/ServiceLoader;	?l(Ljava/lang/ClassLoader;)Ljava/util/List;createActionProcessor5(Lio/atlasmap/spi/AtlasFieldAction;Ljava/util/List;)VdetALio/atlasmap/core/DefaultAtlasFieldActionService$ActionProcessor;methodLjava/lang/reflect/Method;atlasFieldAction"Lio/atlasmap/spi/AtlasFieldAction;clazzLjava/lang/Class;methodsjava/lang/reflect/Method;Ljava/lang/Class<*>;L
?x(Lio/atlasmap/spi/AtlasFieldAction;Ljava/util/List;)VcreateDetailFromFieldActionInfon(Ljava/lang/Class;Ljava/lang/reflect/Method;)Lio/atlasmap/core/DefaultAtlasFieldActionService$ActionProcessor;actionClazzeLjava/lang/Exception;"Ljava/lang/ClassNotFoundException;
annotation&Lio/atlasmap/spi/AtlasFieldActionInfo;Lio/atlasmap/v2/ActionDetail;sourceCollectionLio/atlasmap/v2/CollectionType;targetCollectionfinalActionClazz+Ljava/lang/Class<+Lio/atlasmap/v2/Action;>;(+?Kq(Ljava/lang/Class<*>;Ljava/lang/reflect/Method;)Lio/atlasmap/core/DefaultAtlasFieldActionService$ActionProcessor;createDetailFromProcessorsourceClassLjava/lang/Throwable;&Lio/atlasmap/spi/AtlasActionProcessor;targetClassnameLjava/lang/String;genericParameterTypes[Ljava/lang/reflect/Type;oLjava/lang/Object;objectR?ptoFieldCollectionType2(Ljava/lang/Class;)Lio/atlasmap/v2/CollectionType;5(Ljava/lang/Class<*>;)Lio/atlasmap/v2/CollectionType;toFieldTypeE(Ljava/lang/Class;Ljava/lang/reflect/Type;)Lio/atlasmap/v2/FieldType;t
parameterTypeH(Ljava/lang/Class<*>;Ljava/lang/reflect/Type;)Lio/atlasmap/v2/FieldType;detectFieldActionParameters4(Ljava/lang/Class;)Lio/atlasmap/v2/ActionParameters;mmethodParamLjava/lang/reflect/Parameter;actionParam Lio/atlasmap/v2/ActionParameter;params!Lio/atlasmap/v2/ActionParameters;??

Exceptions7(Ljava/lang/Class<*>;)Lio/atlasmap/v2/ActionParameters;listActionDetailsreadLock1()Ljava/util/List;getActionDetailByActionName1(Ljava/lang/String;)Lio/atlasmap/v2/ActionDetail;actionDetail
actionName
DeprecatedRuntimeVisibleAnnotationsLjava/lang/Deprecated;findActionDetailP(Lio/atlasmap/v2/Action;Lio/atlasmap/v2/FieldType;)Lio/atlasmap/v2/ActionDetail;actionLio/atlasmap/v2/Action;
sourceTypeLio/atlasmap/v2/FieldType;	processorfindActionProcessort(Lio/atlasmap/v2/Action;Lio/atlasmap/v2/FieldType;)Lio/atlasmap/core/DefaultAtlasFieldActionService$ActionProcessor;detailcustomActionLio/atlasmap/v2/CustomAction;matches?processActionsT(Lio/atlasmap/spi/AtlasInternalSession;Lio/atlasmap/v2/Field;)Lio/atlasmap/v2/Field;indexLjava/lang/Integer;subFieldLio/atlasmap/v2/Field;Ljava/util/Optional;valuessubValuesubTypeiI
tmpSourceListitemmultiplicityLio/atlasmap/v2/Multiplicity;
sourceListnewFieldsession&Lio/atlasmap/spi/AtlasInternalSession;fieldactionsLjava/util/ArrayList;
targetTypesourceObject
fieldGroupLio/atlasmap/v2/FieldGroup;tmpSourceObjectcurrentType(Ljava/util/Optional;$Ljava/util/List;Ljava/util/List<*>;.Ljava/util/ArrayList;????VisAssignableFieldType7(Lio/atlasmap/v2/FieldType;Lio/atlasmap/v2/FieldType;)ZexpectedactualgetConversionService*()Lio/atlasmap/spi/AtlasConversionService;camelize&(Ljava/lang/String;)Ljava/lang/String;	parameterc[Clambda$processActions$3(Ljava/lang/Object;)Zvlambda$listActionDetails$2`(Lio/atlasmap/core/DefaultAtlasFieldActionService$ActionProcessor;)Lio/atlasmap/v2/ActionDetail;xlambda$loadFieldActions$15(Ljava/util/List;Lio/atlasmap/api/AtlasFieldAction;)V"Lio/atlasmap/api/AtlasFieldAction;lambda$loadFieldActions$05(Ljava/util/List;Lio/atlasmap/spi/AtlasFieldAction;)V
access$000[(Lio/atlasmap/core/DefaultAtlasFieldActionService;)Lio/atlasmap/spi/AtlasConversionService;x0
access$100c(Lio/atlasmap/core/DefaultAtlasFieldActionService;Ljava/lang/Class;)Lio/atlasmap/v2/CollectionType;x1
SourceFile#DefaultAtlasFieldActionService.javaxy$java/util/ArrayList1java/util/concurrent/locks/ReentrantReadWriteLock#)&,$$ 36!"#$ io/atlasmap/spi/AtlasFieldAction	$% io/atlasmap/api/AtlasFieldActionBootstrapMethods&'()*+,-./
012Loaded %s Field Actionsjava/lang/Object3456789:java/lang/StringBuilderLoading FieldAction class: ;<=>?>@ATUB?hU$io/atlasmap/spi/AtlasFieldActionInfo
CDio/atlasmap/v2/ActionDetailE>F:G:m>H:?IJK?ILKMNO^P?QRS?T?io.atlasmap.v2.UVjava/lang/ExceptionW5XYZ[\.Could not get json schema for action=%s msg=%s]>^_`ab2??cd java/lang/ClassNotFoundException5Error detecting parameters for field action=%s msg=%se2Loaded FieldAction: f:1io/atlasmap/core/DefaultAtlasFieldActionService$1g$io/atlasmap/spi/AtlasActionProcessorh4FInvalid @AtlasActionProcessor method.  Expected at least 1 parameter: ;iio/atlasmap/v2/ActionjklmGInvalid @AtlasActionProcessor method.  1st parameter does not subclass : nopqr{|stuio.atlasmap.actionsv?wxO?y?z4{|}~java/lang/Throwable3Error creating object instance for action=%s msg=%s1io/atlasmap/core/DefaultAtlasFieldActionService$2??2?^java/util/Collection?^????^?^???4?#java/lang/reflect/ParameterizedType?x??java/lang/Class??set??io/atlasmap/v2/ActionParameters??io/atlasmap/v2/ActionParameter?4??????
???K?2????value???4??>Failed to populate possible enum parameter values, ignoring...9_?4????????????????java/util/List?4???2?????io/atlasmap/v2/CustomAction?>?>io/atlasmap/api/AtlasExceptionIThe class name and method name must be specified for custom FieldAction: :?io/atlasmap/core/DefaultAtlasFieldActionService$ActionProcessor?>???io/atlasmap/v2/FieldType??????I???I?2???io/atlasmap/v2/FieldGroup?4io/atlasmap/v2/Field???4????????????2??>:Couldn't find metadata for a FieldAction '%s', ignoring...?>?>??????????????[Ljava/lang/Object;???'7FieldAction created more values than expected, ignoringio/atlasmap/v2/SimpleField????????????????????????java/lang/String?AB/io/atlasmap/core/DefaultAtlasFieldActionService???java/util/HashSetjava.util.Listjava.util.ArrayListjava.util.LinkedListjava.util.Vectorjava.util.Stackjava.util.AbstractList java.util.AbstractSequentialList?
java.util.Mapjava.util.HashMapjava.util.TreeMapjava.util.Hashtablejava.util.IdentityHashMapjava.util.LinkedHashMapjava.util.SortedMapjava.util.WeakHashMapjava.util.Properties&java.util.concurrent.ConcurrentHashMap"java.util.concurrent.ConcurrentMap'io/atlasmap/spi/AtlasFieldActionService1io/atlasmap/core/DefaultAtlasFieldActionService$3java/lang/ClassLoaderjava/util/concurrent/locks/Lockjava/util/ServiceLoaderjava/lang/reflect/Methodio/atlasmap/v2/CollectionType[Ljava/lang/reflect/Parameter;java/lang/reflect/Parameterjava/util/Iterator$io/atlasmap/spi/AtlasInternalSessionjava/lang/Integerio/atlasmap/v2/MultiplicitygetClass()Ljava/lang/Class;getClassLoader()Ljava/lang/ClassLoader;/com/fasterxml/jackson/databind/type/TypeFactorydefaultInstance3()Lcom/fasterxml/jackson/databind/type/TypeFactory;
constructType(java/util/concurrent/locks/ReadWriteLock#()Ljava/util/concurrent/locks/Lock;lockcleario/atlasmap/v2/ActionResolvergetInstance8(Ljava/lang/ClassLoader;)Lio/atlasmap/v2/ActionResolver;addAll(Ljava/util/Collection;)ZunlockloadC(Ljava/lang/Class;Ljava/lang/ClassLoader;)Ljava/util/ServiceLoader;
?(Ljava/lang/Object;)V
?%(Lio/atlasmap/spi/AtlasFieldAction;)Vaccept`(Lio/atlasmap/core/DefaultAtlasFieldActionService;Ljava/util/List;)Ljava/util/function/Consumer;forEach (Ljava/util/function/Consumer;)V
?%(Lio/atlasmap/api/AtlasFieldAction;)Vorg/slf4j/LoggerisDebugEnabled()Zsize()IvalueOf(I)Ljava/lang/Integer;format9(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;debug(Ljava/lang/String;)Vappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;getCanonicalName()Ljava/lang/String;toString
getMethods()[Ljava/lang/reflect/Method;add
getAnnotation4(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;getNamesetClassName	setMethodsetName()Lio/atlasmap/v2/FieldType;
setSourceType(Lio/atlasmap/v2/FieldType;)V
setTargetTypesourceCollectionType!()Lio/atlasmap/v2/CollectionType;NONEMANY_TO_ONEsetMultiplicity (Lio/atlasmap/v2/Multiplicity;)VONE_TO_MANY
ONE_TO_ONEforName%(Ljava/lang/String;)Ljava/lang/Class;java/lang/Boolean(Z)Ljava/lang/Boolean;	setCustom(Ljava/lang/Boolean;)VsetActionSchema(Ljava/lang/Class;)V
getMessageerror*(Ljava/lang/String;Ljava/lang/Throwable;)VisCustom()Ljava/lang/Boolean;booleanValue
setParameters$(Lio/atlasmap/v2/ActionParameters;)VisTraceEnabledtrace?(Lio/atlasmap/core/DefaultAtlasFieldActionService;Lio/atlasmap/v2/ActionDetail;Ljava/lang/Class;Ljava/lang/reflect/Method;Ljava/lang/Class;)VgetParameterCount-(Ljava/lang/Object;)Ljava/lang/StringBuilder;getParameterTypes()[Ljava/lang/Class;isAssignableFrom(Ljava/lang/Class;)Z
getReturnTypetoId%(Ljava/lang/Class;)Ljava/lang/String;getGenericReturnType()Ljava/lang/reflect/Type;
getPackage()Ljava/lang/Package;java/lang/PackageequalsgetGenericParameterTypes()[Ljava/lang/reflect/Type;ZERO_TO_ONEgetModifiersjava/lang/reflect/ModifierisStatic(I)ZnewInstance()Ljava/lang/Object;?(Lio/atlasmap/core/DefaultAtlasFieldActionService;Lio/atlasmap/v2/ActionDetail;Ljava/lang/Class;Ljava/lang/reflect/Method;Ljava/lang/Object;)VisArrayARRAYALL
java/util/SetcontainsLISTMAP($SwitchMap$io$atlasmap$v2$CollectionType[IordinalgetComponentTypegetActualTypeArguments.io/atlasmap/core/DefaultAtlasConversionService2()Lio/atlasmap/core/DefaultAtlasConversionService;fieldTypeFromClass-(Ljava/lang/Class;)Lio/atlasmap/v2/FieldType;
startsWith(Ljava/lang/String;)Z
getParameters ()[Ljava/lang/reflect/Parameter;length	substring(I)Ljava/lang/String;getType&io/atlasmap/spi/AtlasConversionServicesetFieldTypeisEnumSTRINGgetEnumConstants()[Ljava/lang/Object;getDeclaredMethod@(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;	getValuesinvoke9(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;getParameterstream()Ljava/util/stream/Stream;&(Ljava/lang/Object;)Ljava/lang/Object;
?apply()Ljava/util/function/Function;java/util/stream/Streammap8(Ljava/util/function/Function;)Ljava/util/stream/Stream;java/util/stream/CollectorstoList()Ljava/util/stream/Collector;collect0(Ljava/util/stream/Collector;)Ljava/lang/Object;iterator()Ljava/util/Iterator;hasNextnextgetActionDetail()Lio/atlasmap/v2/ActionDetail;getClassName
getMethodName	getMethodgetActionClassget(I)Ljava/lang/Object;ANYjava/util/ArraysasList%([Ljava/lang/Object;)Ljava/util/List;
getSourceType
getActions()Ljava/util/ArrayList;getFieldTypeisEmptyCOMPLEXgetValuegetFieldgetIndex()Ljava/lang/Integer;intValue'(ILjava/lang/Object;)Ljava/lang/Object;
?test ()Ljava/util/function/Predicate;filter9(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;	findFirst()Ljava/util/Optional;java/util/Optional	isPresentgetDocIdgetDisplayNamegetPathio/atlasmap/v2/AuditStatusWARNLio/atlasmap/v2/AuditStatus;io/atlasmap/core/AtlasUtiladdAudit?(Lio/atlasmap/api/AtlasSession;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/atlasmap/v2/AuditStatus;Ljava/lang/String;)VgetMultiplicity()Lio/atlasmap/v2/Multiplicity;convertTypeZ(Ljava/lang/Object;Lio/atlasmap/v2/FieldType;Lio/atlasmap/v2/FieldType;)Ljava/lang/Object;process=(Lio/atlasmap/v2/Action;Ljava/lang/Object;)Ljava/lang/Object;toArraysetValue io/atlasmap/v2/AtlasModelFactory	copyField0(Lio/atlasmap/v2/Field;Lio/atlasmap/v2/Field;Z)VcreateFieldGroupFrom3(Lio/atlasmap/v2/Field;)Lio/atlasmap/v2/FieldGroup;ANY_DATEDATETIME	DATE_TIMEDATE_TIME_TZDATE_TZTIME_TZtoCharArray()[Cjava/lang/CharactertoLowerCase(C)C([C)Vorg/slf4j/LoggerFactory	getLogger%(Ljava/lang/Class;)Lorg/slf4j/Logger;(Ljava/util/Collection;)V	????????"java/lang/invoke/LambdaMetafactorymetafactoryLookup?(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;%java/lang/invoke/MethodHandles$Lookupjava/lang/invoke/MethodHandles!? 


v**?*?Y??*?Y??	*?*?
*+??=89:;$>)? *!"*#$:**???
?
DE !"%&<?+??H !"'(#)?C*?	?M,?*??*+??
*?*+??W,??N,?-??
09*
L
NOP!Q0S6T9S@TBU  C!"C*+
9,-.?9/012346**????X !"536[+?M+?N?Y?:,*??-*?????!?? Y?!?"S?#?$?"bdfg#h/j:kXm 4[!"[*+T78M98D:; T7<M9=D:.?X>>?@ABk
????$??%Y?&'?(+??)?(?*?$+?N-?+::?66?>2:*-?,:		?,	?-W*-?.:		?,	?-W?????6
qr,u1v7wQzZ{_|h?q?v?w?? HZ%CD	Q.EF?!"?GH?:1UIJ7OKL;?:1UIM.-,?/N?OPP?$QR??STU	v,/?0?/N-???1Y?2:+?3?4,?5?6-?7?8-?9?:-?;?<-?=:-?=:??>????@?#??>??A?@??B?@?%Y?&C?(-?7?(?*?D:?::?F?G?H?):?I? Y-?7SY?JS?#?K?L??L?M?*?N?O?):?Q? Y-?7SY?RS?#?K??S?"??%Y?&T?(?U?(?*?V:?WY*,+?X????E???E?P?"?
????"?+?6?A?L?T?\?i?t?????????????????????????????9?D?c?g? ?
?VJ?WX?$WX$WYv!"vIJvEF
lZ[]C\T"]^\_^??VJg`J;*?VavIM??Vag`a.-
?b?ccdd_e?
OIe%
Bf%)ghUS,Y?0?YN-??,?Z???%Y?&[?(,?\?*?$:],?^2?_?,?^2:?+??%Y?&`?(]?3?(a?(,?\?*?$,?b:*?
?c:?1Y?2:+?3?4,?5?6?8*,?d?e?<+?f?gh?i??F?G,?j:??w,?^2:	-?k?l?-?k?:?*	,?j2?e?:*	?:
*?:
?>????@??>??A?@??B?@????m?@?H?':	?I? Y+?3SY	?JS?#	?K*?N?O?(:	?Q? Y?USY	?RS?#	?K:	,?n?o?
+?p?:	?(:
?r? Y?USY
?sS?#
?K	:
:?tY*,
?u?ahkE???P???q?1?
???36DOw}???????????? !!)"4#<$G&O(Y)a-h0k.m/?3?6?4?5?8?:?=?;?<>@	A ??iiJ	6]^
!._^m"WX	?#WY	?#Wj
!"IJEF
Zk6?VJ}?lJ??mn??C\?Bop?Tqr	sr
	`J;4?iiM	IM6?Va}?lM	`a.N?t"?O'?YOuc?.vO?"dd?Ie#Mf$?w@wD2$gxy??+?v??w?+x??y??z+?3?{??|??}+?3?{??~??>?&	?????$?(?7?;? ?!"?IJ;?IM.	z{|??*+???.?o *AX*+??,?e?,????2N??-?????,????2N??-?????,????2N??-???????+???&	?,?6?B?M?Y?d?p?{? >B}(Y}(p}(?!"?IJ?~(;?IM.,	???M+?+N-?66?-2:?Z???5?????,???Y??M:??:?6	6

	??
2:??Y??:*?5?????????*?????????????k????????:?6
6
?92:??????:??? ?????-W???Ƨ:????,???-W?
??>????,????E^???1?5?=?@?]?f?|??????????????????????? \	??F?)Wr?WX]???@????EF!"VJ??;VM.?	?/O?P?.Q?/O?PQ???d/O?PQ?????? @!"
6?-.?7/12????/*????M,???,???1N-?U+?i?-???????(?*?-?  
?\/!"/?n.?
???????v*+,??N-??-???
 *!"????
?D.?
R?????
pN+???4+??N-???
-???!??Y?%Y?&??(-???(?*????Y?:*?	??:?*???:???b????:??:-?.-?????i?7-?????i?(?-W???+??
?-W?????:	?	??!?(??????,?U??Y??SY?lS??,???9??:???&????:,????????????????N?????~	
	
:CNUv????????!?"?!?"?$&(*.+M,^-a/d1 \	G?\vP?DM?Dp!"p??p??n??C-?N"?-;C-?.6???%?1??MRc??I2 ?(?)?????($,??N,??:-?-?
-?™,??????,?,??:?*???????l::,?ř?,??:?Y?:?ƹ?:		???[	????:

??:?3???!??-W?????
?Ĺ?W?
?Ĺ-W???:?l:?!?6????????:		?Ι*??	?϶??:::	-??:

????
???]:*	??:??:

?'+,???? Y??S?#,?Բ??֧??
???
?ק?B:??????:6?!????:?*???????l:?1*
???ؚ#*??
????:??W?????:??W???w?%*
??	?ؚ*??	
????:????????:???v????۸?:?"?x?????x????::	???@????:???'??:?*????:	???է?*????:	???????|??:
6
?!?`?ƹ!?,??????:
????	?ާ"+??????
?????ք???M????Y??:
,
??
??
	??
M?p???\,??:????:

???:
??:??Y??:,????	?????-W???M?,??,	??,??h78:;>'?)B/CJDMETFZGcH?I?J?K?L?N?P?R?S?T?U?V?WX]_`;aEbNcSdbefdjfqdtgwj?k?l?m?n?o?p?q?rtuv$m*y;zO|_}l?|????????????????????????????.?=?N?\?c?f?p?z????????????????????????????????????
????"? $?B???I??
?q?	c???o?r?T???????????rE??DN??\
?|??;???N??"i??o?
???
?"???+?r$!"$??$??????/??rJ???M???	?r??	;4?q?	c???????o??
??.?,????wB??&
/????w?????!?????E?
w???Q?RcB?????,wB??4?? ?!??*??/????w??w??????C??#???@?????^??+??????+???E??,???5??,???+??,???!??,?????,???
??,?????+,???"?
???.?B?W?X?  ^!"^??^??.
?E@??/*??? !"??|$+?
+???+?+??M,,4??U??Y,????
???  $!"$?n??.
???
*???V 
?r.@
??1*???? ?D??E*,+??h  !":G???E*,+??g  !":GH??/*??5 ?"??:*+??5 ?"?J?$??????Y??Y?SY?SY?SY?SY?SY?SY?S?????z??Y??Y?SY?SY?SYSYSYSYSYSYSY	SY
SYS?????}?7?>???
*	??tW
*


???
???




© 2015 - 2025 Weber Informatics LLC | Privacy Policy