Lukáš Asník. Software Development & Monitoring Tools (NSWI126)

Size: px
Start display at page:

Download "Lukáš Asník. Software Development & Monitoring Tools (NSWI126)"

Transcription

1 Lukáš Asník Software Development & Monitoring Tools (NSWI126)

2 Contents tasks <available>, <condition>, <antcall> conditionally processed targets attributes if and unless properties in external files dependencies between targets typical structure of build file real example: Ant build file

3 Task <available> sets property if resource is available at runtime otherwise property is not set resource: file, directory, class, JVM system resource attributes: property: name of the property to set value: value set to property (default: true) classname, file, resource: class, file or resource to look for classpath, filepath: (class)path to use when looking up classname or resource (classpath) or file (filepath)... usage: both can be set via nested element to set properties useful to avoid target execution depending on system parameters

4 <available> Example 1/2 <project name="available_example" default="printproperties" basedir="."> <description> Example of using Available task. </description> <available file="file1.txt" property="file1.present" value="file1.txt is present"> <filepath> <dirset dir="../dir1a"/> </filepath> </available> <available file="file2.txt" searchparents="true" property="file2.present"/> <available file="file3.txt" property="file3.present"/> <target name="printproperties"> <echo message="file1.present = ${file1.present}"/> <echo message="file2.present = ${file2.present}"/> <echo message="file3.present = ${file3.present}"/> </project>

5 <available> Example 2/2

6 Task <condition> generalization of <available> sets property if certain condition holds true otherwise not set (or value set to else attribute) attributes: property: name of the property to set value: value set to the property (default: true) else: value set to property if condition evaluates to false conditions to test specified as nested elements core and custom conditions

7 Core Conditions nested elements in <condition> and <waitfor> tasks <not>, <and>, <or>, <xor> no attributes shortcut semantics as Java && and operators conditions evaluated in the order they were specified <available>, <uptodate> identical to the tasks but property and value attributes ignored <os> tests the type of OS, all specified attributes must be true attributes: family, name, arch, version <equals> tests whether two values are equal attributes: arg1, arg2, casesensitive, trim, forcestring

8 Core Conditions <isset> tests, whether given property is set (attribute property) <filesmatch> byte for byte comparison, two nonexistent files are considered equal attributes: file1, file2, textfile <contains> tests, whether string contains another one attributes: string, substring, casesensitive <istrue> tests, whether string equals any definition of true ("true", "yes", "on") <isfalse> negation of istrue <isref> whether reference was defined in the project, optionally type of the reference <length>, <checksum>, <http>, <socket>, <typefound>,...

9 Core Conditions Example <project name="condition_example" default="printproperties" basedir="."> <property name="testproperty" value="value1" /> <condition property="condition.result" value="condition is true!" else="condition 1 is false!"> <and> <isset property="testproperty"/> <not> <istrue value="false"/> </not> <or> <equals arg1="a" arg2="b"/> <contains string="string" substring="str" casesensitive="false"/> </or> </and> </condition> <target name="printproperties"> <echo message="${condition.result}"/> </project>

10 Custom Conditions implement interface org.apache.tools.ant.taskdefs.condition.condition package com.mydomain; import org.apache.tools.ant.buildexception; import org.apache.tools.ant.taskdefs.condition.condition; public class AllUpperCaseCondition implements Condition { private String value; // The setter for the "value" attribute public void setvalue(string value) { this.value = value; } } // This method evaluates the condition public boolean eval() { if (value == null) { throw new BuildException("value attribute is not set"); } return value.touppercase().equals(value); }

11 Custom Conditions add condition to the system using <typedef> element <typedef name="alluppercase" classname="com.mydomain.alluppercasecondition" classpath="${mydomain.classes}"/> use wherever Core conditions are used

12 Task <antcall> calls another target within the same buildfile may specify properties (params) must not be used outside of a target! attributes: target: target to execute inheritall: true pass all properties to new project (default: true) inheritrefs: true pass all references to new project (default: false)

13 <antcall> Properties Passing if inheritall is set to false, only user properties are passed to new project (i. e. command line properties) passed properties override properties set in the new project tag <param>: equivalent to command line properties, does not override them when more <param> elements set the property with the same name, the last declared wins

14 Properties Passing Example 1/2 <project name="antcall_example_1_param" default="default" basedir="."> <description> Example of passing new properties using param element. </description> <property name="param1" value="this value will be overriden."/> <target name="default"> <antcall target="dosomethingelse"> <param name="param1" value="passedpropertyvalue"/> <param name="cmlparam" value="cannotoverridecommandlineproperty"/> <param name="settwice" value="first"/> <param name="settwice" value="second"/> </antcall> <target name="dosomethingelse"> <echo message="param1=${param1}"/> <echo message="cmlparam=${cmlparam}"/> <echo message="settwice=${settwice}"/> </project>

15 Properties Passing Example 2/2

16 <antcall> References <reference> references that should be copied attributes refid: reference in calling project torefid: id of reference in the new project <project name="antcall_example_2_reference" default="default" basedir="."> <path id="path1"> <pathelement path="a"/> <pathelement path="b"/> </path> <path id="path2"> <pathelement path="c"/> <pathelement path="d"/> </path> <target name="default"> <antcall target="printpath"> <reference refid="path2" torefid="path1"/> </antcall> <target name="printpath"> <pathconvert property="pathproperty" refid="path1"/> <echo>path1 is ${pathproperty}</echo> </project>

17 If and Unless attributes of <target> (and various tasks) target gets executed if/unless a property (name specified as value of if/unless) has been set or the value of if/unless evaluates to true/false only one property for multiple conditions use dependent target <target name="mytarget" depends="mytarget.check" if="mytarget.run"> <echo>files foo.txt and bar.txt are present.</echo> <target name="mytarget.check"> <condition property="mytarget.run"> <and> <available file="foo.txt"/> <available file="bar.txt"/> </and> </condition>

18 If and Unless Example <project name="ifunless_example" default="default" basedir="."> <property name="true" value="true" /> <property name="false" value="false"/> <target name="t1" if="${true}"> <echo message="target t1"/> <target name="t2" if="${notassigned}"> <echo message="target t2"/> <target name="t3" unless="${false}"> <echo message="target t3"/> <target name="default" depends="t1,t2,t3"/> </project>

19 Properties in External Files task Property: <property file= pathtofile /> attribute name must not be used file format: <key>:<value> <key>=<value> same as file used in java.util.properties if file is not present, nothing happens

20 Properties File Example #This is a comment line. Comment line may also start with "!".!Comment line. Every comment line must contain "#" or "!" as its!first non-white space character. #Next line contains only white space and is ignored. #key=value capital=prague #key=value country : \ The \ Czech \ Republic #key with empty string as a value empty #key with empty string as a value empty2 = #Escaping, backslash before z is silently dropped (z is not valid escape character) weird\=key\: = \z

21 Properties From File Example <project name="propertiesfromfile" default="printproperties" basedir="."> <property file="build.properties"/> <target name="printproperties"> <echo message="capital = ${capital}"/> <echo message="country = ${country}"/> <echo message="empty = ${empty}"/> <echo message="empty2 = ${empty2}"/> <echo message="weird=key: = ${weird=key:}"/> </project>

22 Target Dependencies target can depend on other targets Ant ensures that those targets have been executed before the current target dependency specified by attribute depends contains list of (comma separated) targets order of execution Ant tries execute targets in order specified by attribute depends target can get executed earlier if earlier target depends on it each target is executed only once! Example (execute target D): <target name="a"/> <target name="b" depends="a"/> <target name="c" depends="b"/> <target name="d" depends="c,b,a"/> Call-Graph: A --> B --> C --> D

23 Standard Ant Targets init (initialization) sets properties <target name="init"> <tstamp/> creates path-like structures <tstamp/> prepare creates directory structure <target name="prepare" depends="init"> <mkdir dir="${build.dir}"/>

24 Standard Ant Targets compile <javac> test <target name="compile" depends="prepare"> <javac srcdir="${src.dir}" destdir="${build.dir.classes}" classpath="${classpath}"/> unit testing and reporting <target name="test" depends="compile"> <junit failureproperty="testsfailed"> <classpath> <pathelement path="${classpath}"/> <pathelement path="${build.dir.classes}"/> </classpath> <formatter type="xml"/> <test name="chapter3.test.testall" todir="${reports.dir}"/> </junit> <junitreport todir="${reports.dir}"> <fileset dir="${reports.dir}"> <include name="**/test-*.xml"/> </fileset> <report format="frames" todir="${reports.dir.html}"/> </junitreport>

25 Standard Ant Targets jar/dist <target name="jar" depends="test" unless="testsfailed"> <jar destfile="${build.dir}/${name}.jar" basedir="${build.dir}" includes="**/*.class"/> docs generate documentation <target name="docs" depends="test" unless="testsfailed"> <javadoc packagenames="com.mycompany.*" sourcepath="${src.dir}" classpath="${classpath}" destdir="${doc.api.dir}" author="true" version="true" use="true" windowtitle="myproject Documentation"> <bottom><![cdata[<em>copyright 2002</em></div>]]></bottom> <link href=" </javadoc>

26 Standard Ant Targets clean removes all compiled and intermediate files <target name="clean"> <delete dir="${build.dir}"/> another targets: main, fetch, all default target: set by default attribute of <project> most often used target

27 Real Example: Ant build file 2030 lines 76 KB

28 Q & A

29 Literature Online:

Software Building (Sestavování aplikací)

Software Building (Sestavování aplikací) Software Building (Sestavování aplikací) http://d3s.mff.cuni.cz Pavel Parízek parizek@d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics What is software building Transforming

More information

Kevin Lee IBM Rational Software SCM23

Kevin Lee IBM Rational Software SCM23 Accelerating and Automating the Build Process with IBM Rational ClearCase and Ant Kevin Lee IBM Rational Software kevin.lee@uk.ibm.com Agenda Overview of Ant What is Ant The Ant build file Typical Ant

More information

Ant. Originally ANT = Another Neat Tool. Created by James Duncan Davidson Now an Apache open-source project

Ant. Originally ANT = Another Neat Tool. Created by James Duncan Davidson Now an Apache open-source project Ant Originally ANT = Another Neat Tool Created by James Duncan Davidson Now an Apache open-source project Ants are amazing insects Can carry 50 times their own weight Find the shortest distance around

More information

Core XP Practices with Java and Eclipse: Part 1

Core XP Practices with Java and Eclipse: Part 1 1. Introduction Core XP Practices with Java and Eclipse: Part 1 This tutorial will illustrate some core practices of Extreme Programming(XP) while giving you a chance to get familiar with Java and the

More information

An Introduction to Ant

An Introduction to Ant An Introduction to Ant Overview What is Ant? Installing Ant Anatomy of a build file Projects Properties Targets Tasks Example build file Running a build file What is Ant? Ant is a Java based tool for automating

More information

Software Development. COMP220/COMP285 Seb Coope Ant: Structured Build

Software Development. COMP220/COMP285 Seb Coope Ant: Structured Build Software Development COMP220/COMP285 Seb Coope Ant: Structured Build These slides are mainly based on Java Development with Ant - E. Hatcher & S.Loughran. Manning Publications, 2003 Imposing Structure

More information

CSE 403 Lecture 11. Static Code Analysis. Reading: IEEE Xplore, "Using Static Analysis to Find Bugs"

CSE 403 Lecture 11. Static Code Analysis. Reading: IEEE Xplore, Using Static Analysis to Find Bugs CSE 403 Lecture 11 Static Code Analysis Reading: IEEE Xplore, "Using Static Analysis to Find Bugs" slides created by Marty Stepp http://www.cs.washington.edu/403/ FindBugs FindBugs: Java static analysis

More information

Quality-Driven Build Scripts for Java Applications. Duy (uu-eee) B. Vo Graduate Student San José State University Department of Computer Science

Quality-Driven Build Scripts for Java Applications. Duy (uu-eee) B. Vo Graduate Student San José State University Department of Computer Science Quality-Driven Build Scripts for Java Applications Duy (uu-eee) B. Vo Graduate Student San José State University Department of Computer Science Some Measures of a Quality Software Product Is the product

More information

Practical Java. Using ant, JUnit and log4j. LearningPatterns, Inc. Collaborative Education Services

Practical Java. Using ant, JUnit and log4j. LearningPatterns, Inc.  Collaborative Education Services Using ant, JUnit and log4j LearningPatterns, Inc. www.learningpatterns.com Collaborative Education Services Training Mentoring Courseware Consulting Student Guide This material is copyrighted by LearningPatterns

More information

Functional Testing (Testování funkčnosti)

Functional Testing (Testování funkčnosti) Functional Testing (Testování funkčnosti) http://d3s.mff.cuni.cz Pavel Parízek parizek@d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics Nástroje pro vývoj software Functional

More information

Getting It Right COMS W4115. Prof. Stephen A. Edwards Spring 2007 Columbia University Department of Computer Science

Getting It Right COMS W4115. Prof. Stephen A. Edwards Spring 2007 Columbia University Department of Computer Science Getting It Right COMS W4115 Prof. Stephen A. Edwards Spring 2007 Columbia University Department of Computer Science Getting It Right Your compiler is a large software system developed by four people. How

More information

JAVA V Tools in JDK Java, winter semester ,2017 1

JAVA V Tools in JDK Java, winter semester ,2017 1 JAVA Tools in JDK 1 Tools javac javadoc jdb javah jconsole jshell... 2 JAVA javac 3 javac arguments -cp -encoding -g debugging info -g:none -target version of bytecode (6, 7, 8, 9) --release -source version

More information

Gant as Ant and Maven Replacement

Gant as Ant and Maven Replacement Gant as Ant and Maven Replacement Dr Russel Winder Concertant LLP russel.winder@concertant.com russel@russel.org.uk Groovy and Grails User Group 2007 Russel Winder 1 Aims and Objectives Convince people

More information

Abstract. Avaya Solution & Interoperability Test Lab

Abstract. Avaya Solution & Interoperability Test Lab Avaya Solution & Interoperability Test Lab Application Notes for Packaging and Deploying Avaya Communications Process Manager Sample SDK Web Application on a Sun Java System Application Server Issue 1.0

More information

The Fénix Framework Detailed Tutorial

The Fénix Framework Detailed Tutorial Understanding the Fénix Framework in a couple of steps... for new FF users Lesson 1: Welcome to the Fénix Framework project Fénix Framework allows the development of Java- based applications that need

More information

Index. Symbols. /**, symbol, 73 >> symbol, 21

Index. Symbols. /**, symbol, 73 >> symbol, 21 17_Carlson_Index_Ads.qxd 1/12/05 1:14 PM Page 281 Index Symbols /**, 73 @ symbol, 73 >> symbol, 21 A Add JARs option, 89 additem() method, 65 agile development, 14 team ownership, 225-226 Agile Manifesto,

More information

Index COPYRIGHTED MATERIAL

Index COPYRIGHTED MATERIAL Index COPYRIGHTED MATERIAL Note to the Reader: Throughout this index boldfaced page numbers indicate primary discussions of a topic. Italicized page numbers indicate illustrations. A abstract classes

More information

12/22/11. Java How to Program, 9/e. Help you get started with Eclipse and NetBeans integrated development environments.

12/22/11. Java How to Program, 9/e. Help you get started with Eclipse and NetBeans integrated development environments. Java How to Program, 9/e Education, Inc. All Rights Reserved. } Java application programming } Use tools from the JDK to compile and run programs. } Videos at www.deitel.com/books/jhtp9/ Help you get started

More information

B O NU S C H A P T E R

B O NU S C H A P T E R BONUS CHAPTER Wicket in Action by Martijn Dashorst and Eelco Hillenius Bonus Chapter 15 Copyright 2008 Manning Publications Setting up a Wicket project In this chapter: Creating the standard web application

More information

The Intel VTune Performance Analyzer: Insights into Converting a GUI from Windows* to Eclipse*

The Intel VTune Performance Analyzer: Insights into Converting a GUI from Windows* to Eclipse* The Intel VTune Performance Analyzer: Insights into Converting a GUI from Windows* to Eclipse* Aaron Levinson Intel Corporation Copyright 2004, Intel Corporation. All rights reserved. Intel, VTune and

More information

ATL TRANSFORMATION EXAMPLE

ATL TRANSFORMATION EXAMPLE 1. ATL Transformation Example: Maven Ant The Ant to Maven example describes a transformation from a file in Ant to a file in Maven (which is an extension of Ant. 1.1. Transformation overview The aim of

More information

Extending The QiQu Script Language

Extending The QiQu Script Language Extending The QiQu Script Language Table of Contents Setting up an Eclipse-Javaproject to extend QiQu...1 Write your first QiQu Command...2 getcommandname...2 getdescription...2 getcommandgroup...2 isusingsubcommand...3

More information

S A M P L E C H A P T E R

S A M P L E C H A P T E R S AMPLE CHAPTER Ant in Action Steve Loughran and Erik Hatcher Sample Chapter 2 Copyright 2007 Manning Publications brief contents 1 Introducing Ant 5 2 A first Ant build 19 3 Understanding Ant datatypes

More information

Games Course, summer Introduction to Java. Frédéric Haziza

Games Course, summer Introduction to Java. Frédéric Haziza Games Course, summer 2005 Introduction to Java Frédéric Haziza (daz@it.uu.se) Summer 2005 1 Outline Where to get Java Compilation Notions of Type First Program Java Syntax Scope Class example Classpath

More information

Introduction to Programming Using Java (98-388)

Introduction to Programming Using Java (98-388) Introduction to Programming Using Java (98-388) Understand Java fundamentals Describe the use of main in a Java application Signature of main, why it is static; how to consume an instance of your own class;

More information

Exceptions and Libraries

Exceptions and Libraries Exceptions and Libraries RS 9.3, 6.4 Some slides created by Marty Stepp http://www.cs.washington.edu/143/ Edited by Sarah Heckman 1 Exceptions exception: An object representing an error or unusual condition.

More information

BEAWebLogic. Server. Beehive Integration in BEA WebLogic Server

BEAWebLogic. Server. Beehive Integration in BEA WebLogic Server BEAWebLogic Server Beehive Integration in BEA WebLogic Server Version 10.0 Document Revised: April 26, 2007 1. Beehive Applications What Is a Beehive Application?............................................

More information

Introduction to C# Applications

Introduction to C# Applications 1 2 3 Introduction to C# Applications OBJECTIVES To write simple C# applications To write statements that input and output data to the screen. To declare and use data of various types. To write decision-making

More information

JAVA V Annotations Java, winter semester ,2016 1

JAVA V Annotations Java, winter semester ,2016 1 JAVA Annotations 1 Annotations (metadata) since Java 5 allow attaching information to elements of code (to classes, methods, fields,...) in general, can be used in the same places as visibility modifiers

More information

Weiss Chapter 1 terminology (parenthesized numbers are page numbers)

Weiss Chapter 1 terminology (parenthesized numbers are page numbers) Weiss Chapter 1 terminology (parenthesized numbers are page numbers) assignment operators In Java, used to alter the value of a variable. These operators include =, +=, -=, *=, and /=. (9) autoincrement

More information

ASSIGNMENT 5 Objects, Files, and a Music Player

ASSIGNMENT 5 Objects, Files, and a Music Player ASSIGNMENT 5 Objects, Files, and a Music Player COMP-202A, Fall 2009, All Sections Due: Thursday, December 3, 2009 (23:55) You MUST do this assignment individually and, unless otherwise specified, you

More information

Unit Tests. Unit Testing. What to Do in Unit Testing? Who Does it? 4 tests (test types) You! as a programmer

Unit Tests. Unit Testing. What to Do in Unit Testing? Who Does it? 4 tests (test types) You! as a programmer Unit Tests Unit Testing Verify that each program unit works as it is intended and expected along with the system specification. Units to be tested: classes (methods in each class) in OOPLs User requirements

More information

Assoc. Prof. Dr. Marenglen Biba. (C) 2010 Pearson Education, Inc. All rights reserved.

Assoc. Prof. Dr. Marenglen Biba. (C) 2010 Pearson Education, Inc. All rights reserved. Assoc. Prof. Dr. Marenglen Biba (C) 2010 Pearson Education, Inc. All rights reserved. Java application A computer program that executes when you use the java command to launch the Java Virtual Machine

More information

Getting Started with the Cisco Multicast Manager SDK

Getting Started with the Cisco Multicast Manager SDK CHAPTER 1 Getting Started with the Cisco Multicast Manager SDK Cisco Multicast Manager (CMM) 3.2 provides a Web Services Definition Language (WSDL)-based Application Programming Interface (API) that allows

More information

Benefits of the Build

Benefits of the Build Benefits of the Build A Case Study in Continuous Integration Kirk Knoernschild TeamSoft, Inc. www.teamsoftinc.com http://techdistrict.kirkk.com http://www.kirkk.com pragkirk@kirkk.com Continuous Integration

More information

What s NetBeans? Like Eclipse:

What s NetBeans? Like Eclipse: What s NetBeans? Like Eclipse: It is a free software / open source platform-independent software framework for delivering what the project calls "richclient applications" It is an Integrated Development

More information

Pace University. Fundamental Concepts of CS121 1

Pace University. Fundamental Concepts of CS121 1 Pace University Fundamental Concepts of CS121 1 Dr. Lixin Tao http://csis.pace.edu/~lixin Computer Science Department Pace University October 12, 2005 This document complements my tutorial Introduction

More information

Ant: The Definitive Guide

Ant: The Definitive Guide Jesse Tilly Eric Burke Publisher: O'Reilly First Edition May 2002 ISBN: 0-596-00184-3, 288 pages Ant is the premier build-management tool for Java environments. Ant is part of Jakarta, the Apache Software

More information

JEUS Webservice 구성 (ant)

JEUS Webservice 구성 (ant) JEUS Webservice 구성 (ant) 2015. 07. 15 목차 JEUS Webservice 구성... 3 1. 웹서비스샘플작성... 3 1.1 사전설치프로그램... 3 1.2 Dynamic Web project 생성... 3 1.3 interface 생성... 5 1.4 class 생성... 6 2. Ant를활용한 wsdl 생성... 8 2.1 service-config

More information

public static boolean isoutside(int min, int max, int value)

public static boolean isoutside(int min, int max, int value) See the 2 APIs attached at the end of this worksheet. 1. Methods: Javadoc Complete the Javadoc comments for the following two methods from the API: (a) / @param @param @param @return @pre. / public static

More information

Reladomo Test Resource

Reladomo Test Resource October 16, 2006 Table of Contents 1. Creating test cases using Reladomo objects. 1 2. MithraTestResource Introduction 1 3. MithraTestResource Detailed API.. 3 4.. 4 5. Test data file format.. 5 1. Creating

More information

MAVEN SUCKS NO(W) REALLY

MAVEN SUCKS NO(W) REALLY MAVEN SUCKS NO(W) REALLY 26.01.2009 Building Projects with Maven vs. Ant by Karl Banke In the past few years Maven has surpassed Ant as the build tool for choice for many projects. Its adoption by most

More information

The Major Mutation Framework

The Major Mutation Framework The Major Mutation Framework Version 1.3.2 May 31, 2017 Contents 1 Overview 3 1.1 Installation.................................... 3 1.2 How to get started................................ 4 2 Step by Step

More information

Introduction to Java. Java Programs Classes, Methods, and Statements Comments Strings Escape Sequences Identifiers Keywords

Introduction to Java. Java Programs Classes, Methods, and Statements Comments Strings Escape Sequences Identifiers Keywords Introduction to Java Java Programs Classes, Methods, and Statements Comments Strings Escape Sequences Identifiers Keywords Program Errors Syntax Runtime Logic Procedural Decomposition Methods Flow of Control

More information

Java 1.8 Programming

Java 1.8 Programming One Introduction to Java 2 Usage of Java 3 Structure of Java 4 Flexibility of Java Programming 5 Two Running Java in Dos 6 Using the DOS Window 7 DOS Operating System Commands 8 Compiling and Executing

More information

Invariants What is an invariant?

Invariants What is an invariant? Invariants What is an invariant? Objects are manipulated and change state, but some properties are always true whatever the state A well-formed state is when all invariants are true An example for a doubly

More information

COE318 Lecture Notes Week 10 (Nov 7, 2011)

COE318 Lecture Notes Week 10 (Nov 7, 2011) COE318 Software Systems Lecture Notes: Week 10 1 of 5 COE318 Lecture Notes Week 10 (Nov 7, 2011) Topics More about exceptions References Head First Java: Chapter 11 (Risky Behavior) The Java Tutorial:

More information

Javadocing in Netbeans (rev )

Javadocing in Netbeans (rev ) Javadocing in Netbeans (rev. 2011-05-20) This note describes how to embed HTML-style graphics within your Javadocs, if you are using Netbeans. Additionally, I provide a few hints for package level and

More information

Basic Tutorial on Creating Custom Policy Actions

Basic Tutorial on Creating Custom Policy Actions Basic Tutorial on Creating Custom Policy Actions This tutorial introduces the Policy API to create a custom policy action. As an example you will write an action which excludes certain values for an asset

More information

Der Java-Experten-Kurs

Der Java-Experten-Kurs Der Java-Experten-Kurs Speicherbelegung und Laufzeitberechnung in Java Karl Pauls Abgabe _.jar gruppe/ doc.pdf build.xml src Classes z.b.: Gruppe 2 Session 2 2_2.zip -> 2/ doc.pdf build.xml

More information

Java How to Program, 10/e. Copyright by Pearson Education, Inc. All Rights Reserved.

Java How to Program, 10/e. Copyright by Pearson Education, Inc. All Rights Reserved. Java How to Program, 10/e Education, Inc. All Rights Reserved. Each class you create becomes a new type that can be used to declare variables and create objects. You can declare new classes as needed;

More information

public static void negate2(list<integer> t)

public static void negate2(list<integer> t) See the 2 APIs attached at the end of this worksheet. 1. Methods: Javadoc Complete the Javadoc comments for the following two methods from the API: (a) / @param @param @param @return @pre. / public static

More information

Object Oriented Programming: In this course we began an introduction to programming from an object-oriented approach.

Object Oriented Programming: In this course we began an introduction to programming from an object-oriented approach. CMSC 131: Chapter 28 Final Review: What you learned this semester The Big Picture Object Oriented Programming: In this course we began an introduction to programming from an object-oriented approach. Java

More information

SERVICE TECHNOLOGIES 1

SERVICE TECHNOLOGIES 1 SERVICE TECHNOLOGIES 1 Exercises 2 02/04/2014 Valerio Panzica La Manna valerio.panzicalamanna@polimi.it http://servicetechnologies.wordpress.com/exercises/ Lesson learned With Jax-Ws you can easily: create

More information

OOP Lab Factory Method, Singleton, and Properties Page 1

OOP Lab Factory Method, Singleton, and Properties Page 1 OOP Lab Factory Method, Singleton, and Properties Page 1 Purpose What to Submit 1. Practice implementing a factory method and singleton class. 2. Enable the Purse application to handle different kinds

More information

GWT in Action by Robert Hanson and Adam Tacy

GWT in Action by Robert Hanson and Adam Tacy SAMPLE CHAPTER GWT in Action by Robert Hanson and Adam Tacy Chapter 2 Copyright 2007 Manning Publications brief contents PART 1 GETTING STARTED...1 1 Introducing GWT 3 2 Creating the default application

More information

Java Fundamentals (II)

Java Fundamentals (II) Chair of Software Engineering Languages in Depth Series: Java Programming Prof. Dr. Bertrand Meyer Java Fundamentals (II) Marco Piccioni static imports Introduced in 5.0 Imported static members of a class

More information

JBoss Tattletale 1.1 Developer's Guide

JBoss Tattletale 1.1 Developer's Guide JBoss Tattletale 1.1 Developer's Guide Betraying all your project's naughty little secrets Copyright 2009 Red Hat Middleware Table of Contents 1. About JBoss Tattletale...1 1.1. The team...1 1.2. Thanks

More information

Tools : The Java Compiler. The Java Interpreter. The Java Debugger

Tools : The Java Compiler. The Java Interpreter. The Java Debugger Tools : The Java Compiler javac [ options ] filename.java... -depend: Causes recompilation of class files on which the source files given as command line arguments recursively depend. -O: Optimizes code,

More information

CS11 Java. Fall Lecture 1

CS11 Java. Fall Lecture 1 CS11 Java Fall 2006-2007 Lecture 1 Welcome! 8 Lectures Slides posted on CS11 website http://www.cs.caltech.edu/courses/cs11 7-8 Lab Assignments Made available on Mondays Due one week later Monday, 12 noon

More information

Decaf Language Reference Manual

Decaf Language Reference Manual Decaf Language Reference Manual C. R. Ramakrishnan Department of Computer Science SUNY at Stony Brook Stony Brook, NY 11794-4400 cram@cs.stonybrook.edu February 12, 2012 Decaf is a small object oriented

More information

Overview License Features Ant task XML elements... 3

Overview License Features Ant task XML elements... 3 missing link ant http task 1 Table of Contents Overview... 2 License... 2 Features... 2 Ant task XML elements... 3 ... 3... 3... 3 nested elements... 3 ... 3 ... 5 /...

More information

Chapter Two Bonus Lesson: JavaDoc

Chapter Two Bonus Lesson: JavaDoc We ve already talked about adding simple comments to your source code. The JDK actually supports more meaningful comments as well. If you add specially-formatted comments, you can then use a tool called

More information

CS 231 Data Structures and Algorithms, Fall 2016

CS 231 Data Structures and Algorithms, Fall 2016 CS 231 Data Structures and Algorithms, Fall 2016 Dr. Bruce A. Maxwell Department of Computer Science Colby College Course Description Focuses on the common structures used to store data and the standard

More information

Programming In Java Prof. Debasis Samanta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

Programming In Java Prof. Debasis Samanta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Programming In Java Prof. Debasis Samanta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture - 06 Demonstration II So, in the last lecture, we have learned

More information

Lecture Notes CPSC 224 (Spring 2012) Today... Java basics. S. Bowers 1 of 8

Lecture Notes CPSC 224 (Spring 2012) Today... Java basics. S. Bowers 1 of 8 Today... Java basics S. Bowers 1 of 8 Java main method (cont.) In Java, main looks like this: public class HelloWorld { public static void main(string[] args) { System.out.println("Hello World!"); Q: How

More information

Abstract. Avaya Solution & Interoperability Test Lab

Abstract. Avaya Solution & Interoperability Test Lab Avaya Solution & Interoperability Test Lab Application Notes for Packaging and Deploying Avaya Communications Process Manager Sample SDK Web Application on BEA Weblogic Application Server Using Apache

More information

Using Eclipse Europa - A Tutorial

Using Eclipse Europa - A Tutorial Abstract Lars Vogel Version 0.7 Copyright 2007 Lars Vogel 26.10.2007 Eclipse is a powerful, extensible IDE for building general purpose applications. One of the main applications

More information

ASSIGNMENT 5 Objects, Files, and More Garage Management

ASSIGNMENT 5 Objects, Files, and More Garage Management ASSIGNMENT 5 Objects, Files, and More Garage Management COMP-202B, Winter 2010, All Sections Due: Wednesday, April 14, 2009 (23:55) You MUST do this assignment individually and, unless otherwise specified,

More information

Downloading Tweet Streams and Parsing

Downloading Tweet Streams and Parsing and Parsing Ayan Bandyopadhyay IR Lab. CVPR Unit Indian Statistical Institute (Kolkata) To download this slide go to: https://goo.gl/aywi1s 1 and Parsing Downloading Tweet Streams It is imagined that Tweets

More information

12/22/11. Java How to Program, 9/e. public must be stored in a file that has the same name as the class and ends with the.java file-name extension.

12/22/11. Java How to Program, 9/e. public must be stored in a file that has the same name as the class and ends with the.java file-name extension. Java How to Program, 9/e Education, Inc. All Rights Reserved. } Covered in this chapter Classes Objects Methods Parameters double primitive type } Create a new class (GradeBook) } Use it to create an object.

More information

Embedding Graphics in JavaDocs (netbeans IDE)

Embedding Graphics in JavaDocs (netbeans IDE) Embedding Graphics in JavaDocs (netbeans IDE) This note describes how to embed HTML-style graphics within your JavaDocs, if you are using Netbeans. Additionally, I provide a few hints for package level

More information

USING THE OOSIML/JAVA. With a Terminal Window

USING THE OOSIML/JAVA. With a Terminal Window USING THE OOSIML/JAVA With a Terminal Window On Linux Operating System José M. Garrido Department of Computer Science December 2017 College of Computing and Software Engineering Kennesaw State University

More information

Today. Book-keeping. File I/O. Subscribe to sipb-iap-java-students. Inner classes. Debugging tools

Today. Book-keeping. File I/O. Subscribe to sipb-iap-java-students. Inner classes.  Debugging tools Today Book-keeping File I/O Subscribe to sipb-iap-java-students Inner classes http://sipb.mit.edu/iap/java/ Debugging tools Problem set 1 questions? Problem set 2 released tomorrow 1 2 So far... Reading

More information

Review for Test 1 (Chapter 1-5)

Review for Test 1 (Chapter 1-5) Review for Test 1 (Chapter 1-5) 1. Introduction to Computers, Programs, and Java a) What is a computer? b) What is a computer program? c) A bit is a binary digit 0 or 1. A byte is a sequence of 8 bits.

More information

Sams Teach Yourself ASP.NET in 24 Hours

Sams Teach Yourself ASP.NET in 24 Hours Sams Teach Yourself ASP.NET in 24 Hours Copyright 2003 by Sams Publishing International Standard Book Number: 0672325624 Warning and Disclaimer Every effort has been made to make this book as complete

More information

Lecture 2 summary of Java SE section 1

Lecture 2 summary of Java SE section 1 Lecture 2 summary of Java SE section 1 presentation DAD Distributed Applications Development Cristian Toma D.I.C.E/D.E.I.C Department of Economic Informatics & Cybernetics www.dice.ase.ro Cristian Toma

More information

Deployment Tools and Techniques

Deployment Tools and Techniques Deployment Tools and Techniques Cengiz Günay CS485/540 Software Engineering Fall 2014, some slides courtesy of J. Smith, R. Pressman, I. Sommerville, and the Internets Günay (Emory MathCS) Deployment Fall

More information

Marcin Luckner Warsaw University of Technology Faculty of Mathematics and Information Science

Marcin Luckner Warsaw University of Technology Faculty of Mathematics and Information Science Marcin Luckner Warsaw University of Technology Faculty of Mathematics and Information Science mluckner@mini.pw.edu.pl http://www.mini.pw.edu.pl/~lucknerm } Annotations do not directly affect program semantics.

More information

Objectives. Problem Solving. Introduction. An overview of object-oriented concepts. Programming and programming languages An introduction to Java

Objectives. Problem Solving. Introduction. An overview of object-oriented concepts. Programming and programming languages An introduction to Java Introduction Objectives An overview of object-oriented concepts. Programming and programming languages An introduction to Java 1-2 Problem Solving The purpose of writing a program is to solve a problem

More information

Java language. Part 1. Java fundamentals. Yevhen Berkunskyi, NUoS

Java language. Part 1. Java fundamentals. Yevhen Berkunskyi, NUoS Java language Part 1. Java fundamentals Yevhen Berkunskyi, NUoS eugeny.berkunsky@gmail.com http://www.berkut.mk.ua What Java is? Programming language Platform: Hardware Software OS: Windows, Linux, Solaris,

More information

Package Management and Build Tools

Package Management and Build Tools Package Management and Build Tools Objektumorientált szoftvertervezés Object-oriented software design Dr. Balázs Simon BME, IIT Outline Ant+Ivy (Apache) Maven (Apache) Gradle Bazel (Google) Buck (Facebook)

More information

Build automation. CSE260, Computer Science B: Honors Stony Brook University

Build automation. CSE260, Computer Science B: Honors Stony Brook University Build automation CSE260, Computer Science B: Honors Stony Brook University http://www.cs.stonybrook.edu/~cse260 2 Build Automation Build automation is the act of scripting or automating a wide variety

More information

Making the Java Coder More Productive Introduction to New Coding Features in JDeveloper

Making the Java Coder More Productive Introduction to New Coding Features in JDeveloper Making the Java Coder More Productive Introduction to New Coding Features in JDeveloper 10.1.3 This document describes several Java Coding scenarios. It either uses predefined source files or creates certain

More information

System Testing. Contents. Steven J Zeil. April 9, 2013

System Testing. Contents. Steven J Zeil. April 9, 2013 Steven J Zeil April 9, 2013 Contents 1 Test Coverage 2 1.1 Coverage Measures............ 2 1.1.1 Black-Box Testing......... 2 1.1.2 White-Box Testing........ 4 1.2 C/C++ - gcov................ 14 1.3 Java.....................

More information

Java Overview An introduction to the Java Programming Language

Java Overview An introduction to the Java Programming Language Java Overview An introduction to the Java Programming Language Produced by: Eamonn de Leastar (edeleastar@wit.ie) Dr. Siobhan Drohan (sdrohan@wit.ie) Department of Computing and Mathematics http://www.wit.ie/

More information

Getting Started with Java Development and Testing: Netbeans IDE, Ant & JUnit

Getting Started with Java Development and Testing: Netbeans IDE, Ant & JUnit Getting Started with Java Development and Testing: Netbeans IDE, Ant & JUnit 1. Introduction These tools are all available free over the internet as is Java itself. A brief description of each follows.

More information

Hello Maven. TestNG, Eclipse, IntelliJ IDEA. Óbuda University, Java Enterprise Edition John von Neumann Faculty of Informatics Lab 2.

Hello Maven. TestNG, Eclipse, IntelliJ IDEA. Óbuda University, Java Enterprise Edition John von Neumann Faculty of Informatics Lab 2. Hello Maven TestNG, Eclipse, IntelliJ IDEA Óbuda University, Java Enterprise Edition John von Neumann Faculty of Informatics Lab 2 Dávid Bedők 2017.09.19. v0.1 Dávid Bedők (UNI-OBUDA) Hello JavaEE 2017.09.19.

More information

Introduction to Programming (Java) 2/12

Introduction to Programming (Java) 2/12 Introduction to Programming (Java) 2/12 Michal Krátký Department of Computer Science Technical University of Ostrava Introduction to Programming (Java) 2008/2009 c 2006 2008 Michal Krátký Introduction

More information

USING THE OOSIML/JAVA COMPILER. With the Command Window

USING THE OOSIML/JAVA COMPILER. With the Command Window USING THE OOSIML/JAVA COMPILER With the Command Window On Windows Operating System José M. Garrido Department of Computer Science December 2017 College of Computing and Software Engineering Kennesaw State

More information

Values and Variables 1 / 30

Values and Variables 1 / 30 Values and Variables 1 / 30 Values 2 / 30 Computing Computing is any purposeful activity that marries the representation of some dynamic domain with the representation of some dynamic machine that provides

More information

Lecture 3. COMP1006/1406 (the Java course) Summer M. Jason Hinek Carleton University

Lecture 3. COMP1006/1406 (the Java course) Summer M. Jason Hinek Carleton University Lecture 3 COMP1006/1406 (the Java course) Summer 2014 M. Jason Hinek Carleton University today s agenda assignments 1 (graded) & 2 3 (available now) & 4 (tomorrow) a quick look back primitive data types

More information

Java Bytecode (binary file)

Java Bytecode (binary file) Java is Compiled Unlike Python, which is an interpreted langauge, Java code is compiled. In Java, a compiler reads in a Java source file (the code that we write), and it translates that code into bytecode.

More information

We d like to hear your suggestions for improving our indexes. Send to

We d like to hear your suggestions for improving our indexes. Send  to Index [ ] (brackets) wildcard, 12 { } (curly braces) in variables, 41 ( ) (parentheses) in variables, 41 += (append) operator, 45 * (asterisk) wildcard, 12 $% automatic variable, 16 $+ automatic variable,

More information

TIBCO Silver Fabric Enabler for TIBCO BusinessEvents Developer Guide

TIBCO Silver Fabric Enabler for TIBCO BusinessEvents Developer Guide TIBCO Silver Fabric Enabler for TIBCO BusinessEvents Developer Guide Software Release 3.2 October 2016 Two-Second Advantage 2 3 Contents TIBCO Silver Fabric Enabler for BusinessEvents Overview...4 Extensions...

More information

Savant Genome Browser: Developer Manual. May 7, 2010

Savant Genome Browser: Developer Manual. May 7, 2010 Savant Genome Browser: Developer Manual May 7, 2010 Author: Marc Fiume Contact: savant@cs.toronto.edu Website: http://compbio.cs.toronto.edu/savant/ This document applies to Savant version 1.02 1 Contents

More information

(Not Quite) Minijava

(Not Quite) Minijava (Not Quite) Minijava CMCS22620, Spring 2004 April 5, 2004 1 Syntax program mainclass classdecl mainclass class identifier { public static void main ( String [] identifier ) block } classdecl class identifier

More information

Language Reference Manual

Language Reference Manual Espresso Language Reference Manual 10.06.2016 Rohit Gunurath, rg2997 Somdeep Dey, sd2988 Jianfeng Qian, jq2252 Oliver Willens, oyw2103 1 Table of Contents Table of Contents 1 Overview 3 Types 4 Primitive

More information

Assertions & Design-by-Contract using JML Erik Poll University of Nijmegen

Assertions & Design-by-Contract using JML Erik Poll University of Nijmegen Assertions & Design-by-Contract using JML Erik Poll University of Nijmegen Erik Poll - JML p.1/39 Overview Assertions Design-by-Contract for Java using JML Contracts and Inheritance Tools for JML Demo

More information

02/03/15. Compile, execute, debugging THE ECLIPSE PLATFORM. Blanks'distribu.on' Ques+ons'with'no'answer' 10" 9" 8" No."of"students"vs."no.

02/03/15. Compile, execute, debugging THE ECLIPSE PLATFORM. Blanks'distribu.on' Ques+ons'with'no'answer' 10 9 8 No.ofstudentsvs.no. Compile, execute, debugging THE ECLIPSE PLATFORM 30" Ques+ons'with'no'answer' What"is"the"goal"of"compila5on?" 25" What"is"the"java"command"for" compiling"a"piece"of"code?" What"is"the"output"of"compila5on?"

More information