Photo by samsungtomorrow - Creative Commons Attribution-NonCommercial-ShareAlike License https://www.flickr.com/photos/47036738@N06 Created with Haiku Deck Photo by agirregabiria - Creative Commons Attribution-NonCommercial-ShareAlike License https://www.flickr.com/photos/75012450@N00 Created with Haiku Deck Photo by agirregabiria - Creative Commons Attribution-NonCommercial-ShareAlike License https://www.flickr.com/photos/75012450@N00 Created with Haiku Deck Studio SOA & HPC Da modelagem de APIs ao Big Data Web design Graphic design 3D modeling 6 Felipe Oliveira @scaphe | [email protected] 8 I <3 Patterns 12 Leia o livro! 12 Case 3: Notas, Itens, Clientes… Magazine Luiza Correlacionando Tudo. 12 Rascunhoda solução: 12 Apollo Concepts SOA|EXPERT Java WEB - Twitter Boostrap SOA Suite Oracle Service Bus Java Server Side Coherance Delphi, File, MQ URIs - HTTP BRMS BPEL Schemas (Oracle RAC) Exemplos SQL Query OData Request select * from products where id = 1 /Products(1) select * from products where name = ‘Milk’ /Products?$filter=name eq ‘Milk’ select name from products /Products?$select=name select * from products order by name /Products?$orderby=name select * from products offset 10 limit 10 /Products?$top=10&$skip=10 select * from prices r, products p where r.id = p.id /Products(1)?$expand=Prices Filters /Categories?$filter=Name eq ‘Dairy’ Logical Operators eq ne gt ge lt le eq or and Arithmetic Operators add sub mul div mod Parenthesis Operator () Canonical Functions Formato /Categories?$format=json atom json xml (Ou qualquer outro formato que você defina.) * Metadata <edmx:Edmx Version="1.0" xmlns:edmx="http://schemas.microsoft.com/ado/2007/06/edmx"> <edmx:DataServices xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" m:DataServiceVersion="1.0"> <Schema Namespace="NorthwindModel" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns="http://schemas.microsoft.com/ado/2008/09/edm"> <EntityType Name="Category"> <Key> <PropertyRef Name="CategoryID" /> </Key> <Property Name="CategoryID" Type="Edm.Int32" Nullable="false" p8:StoreGeneratedPattern="Identity" xmlns:p8="http://schemas.microsoft.com/ado/2009/02/edm/annotation" /> <Property Name="CategoryName" Type="Edm.String" Nullable="false" MaxLength="15" Unicode="true" FixedLength="false" /> <Property Name="Description" Type="Edm.String" Nullable="true" MaxLength="Max" Unicode="true" FixedLength="false" /> </EntityType> </Schema> </edmx:DataServices> </edmx:Edmx> Content Management • Maior parte das grandes organizações possuem múltiplas soluções ECM • Não há padrão entre os sistemas ECM • As APIs são proprietárias, o que eleva o skill set da equipe • Linguagens de Query proprietárias • Dependendes de plataforma e linguagens: Java, NET • Difícil e caro de implementar... CMIS Ajuda a definir ● CMIS Define: ● Modelos e.g. Tipos, Relações ● Padronização da Query Language ● Protocolos Bindings ex: REST, Web Services ● Services ex: Check out/in, versionamento Entendendo CMS Exemplos de Queries • SELECT * FROM cmis:document • SELECT cmis:Name FROM cmis:folder • SELECT cmis:Name FROM cmis:document WHERE IN_TREE(‘soaexpert’) • SELECT cmis:ObjectId, cmis:ObjectTypeId, cmis:Name FROM cmis:folderQCON Streams API Consumindo: Produzindo: XMLHttpRequest Web Audio Media Source Extensions Web Cryptography API TextEncoder TextDecoder WebSockets RTCPeerConnection FileWriter XMLHttpRequest FileReader Media Capture MediaStream Recording API Indexed Database Web Cryptography API TextEncoder TextDecoder WebSockets EventSource RTCPeerConnection Todo dia suge uma nova necessidade CQRS Máquinade estados Orquestração Coreografia Orquestração Coreografia HateOAS Lembrete!!! • Mostrar Fabric3, Sites etc. Obrigado • Contatos: @scaphe Twitter • Email: [email protected] Save the date 14/05