Skip to content

Commit

Permalink
feat (eclise & template): Eclipse project and templates
Browse files Browse the repository at this point in the history
  • Loading branch information
santanche committed Aug 7, 2021
1 parent b115108 commit cd991be
Show file tree
Hide file tree
Showing 97 changed files with 1,564 additions and 20 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
# Jupyter Notebook
.ipynb_checkpoints

# Java Compiled Files
/eclipse/bin/
11 changes: 11 additions & 0 deletions eclipse/.classpath
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8">
<attributes>
<attribute name="module" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="src" path="src"/>
<classpathentry kind="lib" path="lib/xchart-3.5.2.jar"/>
<classpathentry kind="output" path="bin"/>
</classpath>
17 changes: 17 additions & 0 deletions eclipse/.project
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>component2learn</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
15 changes: 15 additions & 0 deletions eclipse/.settings/org.eclipse.jdt.core.prefs
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=1.8
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
org.eclipse.jdt.core.compiler.release=disabled
org.eclipse.jdt.core.compiler.source=1.8
Binary file added eclipse/lib/xchart-3.5.2.jar
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
package pt.c06patterns.factory.s01aquatic;

public class AppAquaticConsole1 {
public static void main(String[] args) {
ISeaAnimal aq1 = new FishConsole(),
aq2 = new CrabConsole();
IFishTank ft = new FishTankConsole();
ft.addSeaAnimal(aq1);
ft.addSeaAnimal(aq2);
ft.showFishTank();
}
}
22 changes: 22 additions & 0 deletions eclipse/src/pt/c06patterns/factory/s01aquatic/CrabConsole.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
package pt.c06patterns.factory.s01aquatic;

public class CrabConsole implements ISeaAnimal {
/*
o o
| |
/-----\
| |
\-----/
/ / \ \
*/


public String image() {
return " o o\n" +
" | |\n" +
"/-----\\\n" +
"| |\n" +
"\\-----/\n" +
"/ / \\ \\\n";
}
}
14 changes: 14 additions & 0 deletions eclipse/src/pt/c06patterns/factory/s01aquatic/FishConsole.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
package pt.c06patterns.factory.s01aquatic;

public class FishConsole implements ISeaAnimal {
/* . _
|\/O\
|/\_/
*/

public String image() {
return ". _\n" +
"|\\/O\\\n" +
"|/\\_/\n";
}
}
21 changes: 21 additions & 0 deletions eclipse/src/pt/c06patterns/factory/s01aquatic/FishTankConsole.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package pt.c06patterns.factory.s01aquatic;

import java.util.ArrayList;

public class FishTankConsole implements IFishTank {
ArrayList<ISeaAnimal> aquaticList = new ArrayList<ISeaAnimal>();

public void addSeaAnimal(ISeaAnimal aquatic) {
aquaticList.add(aquatic);
}

public void showFishTank() {
System.out.println("+-----------------+");
System.out.println("| |");
for (ISeaAnimal aq: aquaticList)
System.out.println(aq.image());
System.out.println("| |");
System.out.println("+-----------------+");
}

}
6 changes: 6 additions & 0 deletions eclipse/src/pt/c06patterns/factory/s01aquatic/IFishTank.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package pt.c06patterns.factory.s01aquatic;

public interface IFishTank {
void addSeaAnimal(ISeaAnimal aquatic);
void showFishTank();
}
5 changes: 5 additions & 0 deletions eclipse/src/pt/c06patterns/factory/s01aquatic/ISeaAnimal.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package pt.c06patterns.factory.s01aquatic;

public interface ISeaAnimal {
public String image();
}
12 changes: 12 additions & 0 deletions eclipse/src/pt/c06patterns/factory/s02aquatic/AppAquaticGUI1.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
package pt.c06patterns.factory.s02aquatic;

public class AppAquaticGUI1 {
public static void main(String[] args) {
ISeaAnimal aq1 = new FishGUI(),
aq2 = new CrabGUI();
IFishTank ft = new FishTankGUI();
ft.addSeaAnimal(aq1);
ft.addSeaAnimal(aq2);
ft.showFishTank();
}
}
7 changes: 7 additions & 0 deletions eclipse/src/pt/c06patterns/factory/s02aquatic/CrabGUI.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package pt.c06patterns.factory.s02aquatic;

public class CrabGUI implements ISeaAnimal {
public String image() {
return CrabGUI.class.getResource(".").getPath() + "crab.png";
}
}
7 changes: 7 additions & 0 deletions eclipse/src/pt/c06patterns/factory/s02aquatic/FishGUI.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
package pt.c06patterns.factory.s02aquatic;

public class FishGUI implements ISeaAnimal {
public String image() {
return FishGUI.class.getResource(".").getPath() + "fish.png";
}
}
41 changes: 41 additions & 0 deletions eclipse/src/pt/c06patterns/factory/s02aquatic/FishTankGUI.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
package pt.c06patterns.factory.s02aquatic;

import java.awt.Color;
import java.awt.Container;
import java.awt.FlowLayout;
import java.util.ArrayList;

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;

public class FishTankGUI extends JFrame implements IFishTank {
private static final long serialVersionUID = 8757083673686143226L;

ArrayList<ISeaAnimal> aquaticList = new ArrayList<ISeaAnimal>();

public void addSeaAnimal(ISeaAnimal aquatic) {
aquaticList.add(aquatic);
}

public FishTankGUI() {
super();
setDefaultCloseOperation(EXIT_ON_CLOSE);
}

public void showFishTank() {
setSize(600, 300);

Container contentPane = getContentPane();
contentPane.setLayout(new FlowLayout());
contentPane.setBackground(new Color(192, 192, 255));

for (ISeaAnimal aq: aquaticList) {
ImageIcon imagem = new ImageIcon(aq.image());
JLabel campoImagem = new JLabel(imagem);
contentPane.add(campoImagem);
}

setVisible(true);
}
}
6 changes: 6 additions & 0 deletions eclipse/src/pt/c06patterns/factory/s02aquatic/IFishTank.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package pt.c06patterns.factory.s02aquatic;

public interface IFishTank {
public void addSeaAnimal(ISeaAnimal aquatic);
public void showFishTank();
}
5 changes: 5 additions & 0 deletions eclipse/src/pt/c06patterns/factory/s02aquatic/ISeaAnimal.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package pt.c06patterns.factory.s02aquatic;

public interface ISeaAnimal {
public String image();
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
package pt.c06patterns.factory.s03aquatic;

import pt.c06patterns.factory.s03aquatic.console.AquaticFactoryConsole;
import pt.c06patterns.factory.s03aquatic.interfaces.IAquaticFactory;
import pt.c06patterns.factory.s03aquatic.interfaces.IFishTank;
import pt.c06patterns.factory.s03aquatic.interfaces.ISeaAnimal;

public class AppAquaticConsole2 {
public static void main(String[] args) {
IAquaticFactory factory = new AquaticFactoryConsole();
ISeaAnimal aq1 = factory.createSeaAnimal("fish"),
aq2 = factory.createSeaAnimal("crab");
IFishTank ft = factory.createFishTank("standard");
ft.addSeaAnimal(aq1);
ft.addSeaAnimal(aq2);
ft.showFishTank();
}
}
18 changes: 18 additions & 0 deletions eclipse/src/pt/c06patterns/factory/s03aquatic/AppAquaticGUI2.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
package pt.c06patterns.factory.s03aquatic;

import pt.c06patterns.factory.s03aquatic.gui.AquaticFactoryGUI;
import pt.c06patterns.factory.s03aquatic.interfaces.IAquaticFactory;
import pt.c06patterns.factory.s03aquatic.interfaces.IFishTank;
import pt.c06patterns.factory.s03aquatic.interfaces.ISeaAnimal;

public class AppAquaticGUI2 {
public static void main(String[] args) {
IAquaticFactory factory = new AquaticFactoryGUI();
ISeaAnimal aq1 = factory.createSeaAnimal("fish"),
aq2 = factory.createSeaAnimal("crab");
IFishTank ft = factory.createFishTank("standard");
ft.addSeaAnimal(aq1);
ft.addSeaAnimal(aq2);
ft.showFishTank();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package pt.c06patterns.factory.s03aquatic.console;

import pt.c06patterns.factory.s03aquatic.interfaces.IAquaticFactory;
import pt.c06patterns.factory.s03aquatic.interfaces.IFishTank;
import pt.c06patterns.factory.s03aquatic.interfaces.ISeaAnimal;

public class AquaticFactoryConsole implements IAquaticFactory {
public ISeaAnimal createSeaAnimal(String type) {
ISeaAnimal seaAnimal = null;
if (type.equals("fish"))
seaAnimal = new FishConsole();
else if (type.equals("crab"))
seaAnimal = new CrabConsole();
return seaAnimal;
}

public IFishTank createFishTank(String type) {
IFishTank fishTank = null;
if (type.equals("standard"))
fishTank = new FishTankConsole();
return fishTank;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
package pt.c06patterns.factory.s03aquatic.console;

import pt.c06patterns.factory.s03aquatic.interfaces.ISeaAnimal;

public class CrabConsole implements ISeaAnimal {
/*
o o
| |
/-----\
| |
\-----/
/ / \ \
*/


public String image() {
return " o o\n" +
" | |\n" +
"/-----\\\n" +
"| |\n" +
"\\-----/\n" +
"/ / \\ \\\n";
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
package pt.c06patterns.factory.s03aquatic.console;

import pt.c06patterns.factory.s03aquatic.interfaces.ISeaAnimal;

public class FishConsole implements ISeaAnimal {
/* . _
|\/O\
|/\_/
*/

public String image() {
return ". _\n" +
"|\\/O\\\n" +
"|/\\_/\n";
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
package pt.c06patterns.factory.s03aquatic.console;

import java.util.ArrayList;

import pt.c06patterns.factory.s03aquatic.interfaces.IFishTank;
import pt.c06patterns.factory.s03aquatic.interfaces.ISeaAnimal;

public class FishTankConsole implements IFishTank {
ArrayList<ISeaAnimal> aquaticList = new ArrayList<ISeaAnimal>();

public void addSeaAnimal(ISeaAnimal aquatic) {
aquaticList.add(aquatic);
}

public void showFishTank() {
System.out.println("+-----------------+");
System.out.println("| |");
for (ISeaAnimal aq: aquaticList)
System.out.println(aq.image());
System.out.println("| |");
System.out.println("+-----------------+");
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package pt.c06patterns.factory.s03aquatic.gui;

import pt.c06patterns.factory.s03aquatic.interfaces.IAquaticFactory;
import pt.c06patterns.factory.s03aquatic.interfaces.IFishTank;
import pt.c06patterns.factory.s03aquatic.interfaces.ISeaAnimal;

public class AquaticFactoryGUI implements IAquaticFactory {
public ISeaAnimal createSeaAnimal(String type) {
ISeaAnimal seaAnimal = null;
if (type.equals("fish"))
seaAnimal = new FishGUI();
else if (type.equals("crab"))
seaAnimal = new CrabGUI();
return seaAnimal;
}

public IFishTank createFishTank(String type) {
IFishTank fishTank = null;
if (type.equals("standard"))
fishTank = new FishTankGUI();
return fishTank;
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package pt.c06patterns.factory.s03aquatic.gui;

import pt.c06patterns.factory.s03aquatic.interfaces.ISeaAnimal;

public class CrabGUI implements ISeaAnimal {
public String image() {
return CrabGUI.class.getResource(".").getPath() + "crab.png";
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
package pt.c06patterns.factory.s03aquatic.gui;

import pt.c06patterns.factory.s03aquatic.interfaces.ISeaAnimal;

public class FishGUI implements ISeaAnimal {
public String image() {
return FishGUI.class.getResource(".").getPath() + "fish.png";
}
}
Loading

0 comments on commit cd991be

Please sign in to comment.