text:
package mx.mobiles.junamex;

import android.app.Activity;
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Bundle;
import android.provider.MediaStore;
import android.support.annotation.Nullable;
import android.support.design.widget.FloatingActionButton;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewTreeObserver;
import android.view.animation.AccelerateDecelerateInterpolator;
import android.widget.ImageButton;
import android.widget.LinearLayout;

import com.facebook.CallbackManager;
import com.facebook.FacebookCallback;
import com.facebook.FacebookException;
import com.facebook.share.Sharer;
import com.facebook.share.model.ShareContent;
import com.facebook.share.model.ShareLinkContent;
import com.facebook.share.model.SharePhoto;
import com.facebook.share.model.SharePhotoContent;
import com.facebook.share.model.ShareVideo;
import com.facebook.share.model.ShareVideoContent;
import com.facebook.share.widget.ShareDialog;
import com.nineoldandroids.animation.Animator;
import com.nineoldandroids.animation.AnimatorSet;
import com.nineoldandroids.animation.ObjectAnimator;
import com.parse.FindCallback;
import com.parse.ParseException;
import com.parse.ParseQuery;

import java.util.ArrayList;
import java.util.List;

import io.codetail.animation.SupportAnimator;
import io.codetail.animation.ViewAnimationUtils;
import mx.mobiles.adapters.NavigationDrawerAdapter;
import mx.mobiles.adapters.PeopleAdapter;
import mx.mobiles.adapters.PostersAdapter;
import mx.mobiles.model.FacebookPosts;
import mx.mobiles.model.People;
import mx.mobiles.utils.SimpleDividerDecorator;

/**
 * Created by carlosjimenez on 14/05/15.
 */
public class SocialFragment extends BaseFragment implements View.OnClickListener, FacebookCallback<Sharer.Result> {

    public static final String TAG = SocialFragment.class.getSimpleName();
    public static final int REQUEST_CODE_CAMERA = 3838;
    public static final int REQUEST_CODE_GALLERY = 8383;

    private FloatingActionButton showMenu;
    private CallbackManager callbackManager;
    private LinearLayout panel;

    private ArrayList<FacebookPosts> postsArrayList;
    private PostersAdapter adapter;

    private int fabCenterX;

    private enum AnimationDirection{
        NORMAL,
        REVERSE
    }

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        postsArrayList = new ArrayList<>();
        adapter = new PostersAdapter(postsArrayList);
    }

    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.fragment_social, container, false);

        panel = (LinearLayout) view.findViewById(R.id.options_menu);

        showMenu = (FloatingActionButton) view.findViewById(R.id.show_menu_button);
        ImageButton shareStatusButton = (ImageButton) view.findViewById(R.id.publish_status);
        ImageButton sharePhotoMakeButton = (ImageButton) view.findViewById(R.id.publish_photo_make);
        ImageButton sharePhotoGalleryButton = (ImageButton) view.findViewById(R.id.publish_photo_gallery);
        ImageButton closeMenu = (ImageButton) view.findViewById(R.id.close_menu);

        showMenu.setOnClickListener(this);
        closeMenu.setOnClickListener(this);
        shareStatusButton.setOnClickListener(this);
        sharePhotoMakeButton.setOnClickListener(this);
        sharePhotoGalleryButton.setOnClickListener(this);

        RecyclerView recyclerView = (RecyclerView) view.findViewById(R.id.posters_leader_board);
        recyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
        recyclerView.addItemDecoration(new SimpleDividerDecorator(getActivity()));
        recyclerView.setAdapter(adapter);

        ViewTreeObserver observer = showMenu.getViewTreeObserver();
        observer.addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
            @Override
            public void onGlobalLayout() {
                //in here, place the code that requires you to know the dimensions.

                fabCenterX = (showMenu.getLeft() + showMenu.getRight()) / 2;
                //this will be called as the layout is finished, prior to displaying.
            }
        });

        getLeaders();
        return view;
    }

    @Override
    public void onActivityCreated(@Nullable Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        callbackManager = CallbackManager.Factory.create();
    }

    @Override
    public int getDrawerPosition() {
        return NavigationDrawerAdapter.SOCIAL_FEED;
    }

    private void getLeaders() {

        ParseQuery<FacebookPosts> query = new ParseQuery<>(FacebookPosts.class);
        query.setCachePolicy(ParseQuery.CachePolicy.NETWORK_ONLY);
        query.orderByDescending(FacebookPosts.COUNTER);
        query.setLimit(10);
        query.findInBackground(new FindCallback<FacebookPosts>() {
            @Override
            public void done(List<FacebookPosts> list, ParseException e) {
                if (e == null) {
                    postsArrayList.clear();
                    postsArrayList.addAll(list);
                    adapter.notifyDataSetChanged();
                }
            }
        });
    }

    private void transformButtonInToolbar() {

        AnimatorSet animatorSet = getButtonAnimator(AnimationDirection.NORMAL);
        animatorSet.start();

        animatorSet.addListener(new Animator.AnimatorListener() {
            @Override
            public void onAnimationStart(Animator animation) {

            }

            @Override
            public void onAnimationEnd(Animator animation) {
                showMenu.setVisibility(View.INVISIBLE);
                showOptionsToolbar();
            }

            @Override
            public void onAnimationCancel(Animator animation) {

            }

            @Override
            public void onAnimationRepeat(Animator animation) {

            }
        });
    }

    private void showOptionsToolbar() {

        getMenuAnimator(AnimationDirection.NORMAL).start();
        panel.setVisibility(View.VISIBLE);
    }

    @Override
    public void onClick(View view) {

        switch (view.getId()) {

            case R.id.close_menu:
                SupportAnimator revealMenu = getMenuAnimator(AnimationDirection.REVERSE);
                revealMenu.addListener(new SupportAnimator.AnimatorListener() {
                    @Override
                    public void onAnimationEnd() {

                        getButtonAnimatorReverse(AnimationDirection.REVERSE).start();
                        panel.setVisibility(View.INVISIBLE);
                        showMenu.setVisibility(View.VISIBLE);
                    }

                    @Override
                    public void onAnimationStart() {

                    }

                    @Override
                    public void onAnimationCancel() {

                    }

                    @Override
                    public void onAnimationRepeat() {

                    }
                });
                revealMenu.start();
                break;

            case R.id.show_menu_button:
                transformButtonInToolbar();
                break;

            case R.id.publish_status:
                ShareContent shareStatus = new ShareLinkContent.Builder().build();
                showShareDialog(shareStatus);
                break;

            case R.id.publish_photo_make:
                Intent takePicture = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                startActivityForResult(takePicture, REQUEST_CODE_CAMERA);
                break;

            case R.id.publish_photo_gallery:
                Intent pickPhoto = new Intent(Intent.ACTION_GET_CONTENT);
                pickPhoto.setType("video/*, image/*");
                startActivityForResult(pickPhoto , REQUEST_CODE_GALLERY);
                break;
        }
    }

    private void showShareDialog(ShareContent content) {
        ShareDialog shareDialog = new ShareDialog(this);
        shareDialog.registerCallback(callbackManager, this);
        shareDialog.show(content);
    }

    @Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);

        if (resultCode == Activity.RESULT_OK) {

            if (requestCode == REQUEST_CODE_GALLERY) {

                Uri selectedFile = data.getData();

                String[] filePathColumn = {MediaStore.Images.Media.DATA};
                Cursor cursor = getActivity().getContentResolver().query(selectedFile, filePathColumn, null, null, null);
                cursor.moveToFirst();

                int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
                String picturePath = cursor.getString(columnIndex);
                cursor.close();

                Bitmap image = BitmapFactory.decodeFile(picturePath);

                if (image != null) {
                    SharePhoto photo = new SharePhoto.Builder()
                            .setBitmap(image)
                            .build();
                    ShareContent sharePhoto = new SharePhotoContent.Builder()
                            .addPhoto(photo)
                            .build();
                    showShareDialog(sharePhoto);
                } else {
                    ShareVideo video = new ShareVideo.Builder()
                            .setLocalUrl(selectedFile)
                            .build();
                    ShareVideoContent shareVideo = new ShareVideoContent.Builder()
                            .setVideo(video)
                            .build();

                    showShareDialog(shareVideo);
                }

            } else if (requestCode == REQUEST_CODE_CAMERA) {

                Bitmap image = (Bitmap) data.getExtras().get("data");
                SharePhoto photo = new SharePhoto.Builder()
                        .setBitmap(image)
                        .build();
                ShareContent sharePhoto = new SharePhotoContent.Builder()
                        .addPhoto(photo)
                        .build();
                showShareDialog(sharePhoto);
            }
        }
        callbackManager.onActivityResult(requestCode, resultCode, data);
    }

    @Override
    public void onSuccess(Sharer.Result result) {

        final People user = People.getPeople(((BaseActivity) getActivity()).getDB(), 1);

        ParseQuery<FacebookPosts> query = new ParseQuery<>(FacebookPosts.class);
        query.setCachePolicy(ParseQuery.CachePolicy.NETWORK_ONLY);
        query.whereEqualTo(FacebookPosts.FACEBOOK_ID, user.getFacebookId());
        query.findInBackground(new FindCallback<FacebookPosts>() {
            @Override
            public void done(List<FacebookPosts> list, ParseException e) {
                if (e == null) {
                    if (list.size() == 1) {
                        FacebookPosts posts = list.get(0);
                        posts
                                .setPostCounter(posts.getPostCounter() + 1)
                                .saveInBackground();
                    } else if (list.size() == 0) {
                        new FacebookPosts()
                                .setFacebookId(user.getFacebookId())
                                .setUserName(user.getName())
                                .setPostCounter(1)
                                .saveInBackground();
                    }
                }
            }
        });
    }

    @Override
    public void onCancel() {

    }

    @Override
    public void onError(FacebookException e) {

    }

    private AnimatorSet getButtonAnimator(AnimationDirection direction) {

        AnimatorSet animatorSet = new AnimatorSet();
        animatorSet.playTogether(
                ObjectAnimator.ofFloat(showMenu, "translationX", 0, -100).setDuration(250),
                ObjectAnimator.ofFloat(showMenu, "translationY", 0, 20, 30).setDuration(250));
        return animatorSet;
    }

    private AnimatorSet getButtonAnimatorReverse(AnimationDirection direction) {

        AnimatorSet animatorSet = new AnimatorSet();
        animatorSet.playTogether(
                ObjectAnimator.ofFloat(showMenu, "translationX", -100, 0).setDuration(250),
                ObjectAnimator.ofFloat(showMenu, "translationY", 30, 20, 0).setDuration(250));
        return animatorSet;
    }

    private SupportAnimator getMenuAnimator(AnimationDirection direction) {
        // get the center for the clipping circle
        int cx = fabCenterX - 150;
        int cy = panel.getHeight() / 2;

        // get the final radius for the clipping circle
        int finalRadius = Math.max(panel.getWidth(), panel.getHeight());

        SupportAnimator circularReveal =
                ViewAnimationUtils.createCircularReveal(panel, cx, cy, 0, finalRadius);
        circularReveal.setInterpolator(new AccelerateDecelerateInterpolator());
        circularReveal.setDuration(250);

        if (direction == AnimationDirection.REVERSE)
            circularReveal = circularReveal.reverse();

        return circularReveal;
    }
}


The fact that the recent TV ratings hit Victoria is filmed primarily within Yorkshire got me thinking about some of the other film and TV shows that have highlighted this region.
Here is my guide to ten famous Yorkshire film and TV locations.
The very pretty village of Goathland will be familiar to many people as the fictional Aidensfield in the popular ITV drama Heartbeat. Stop by this village that's just a few miles from Whitby and you can see the classic cars used in the series. You can also pay a visit the local Aidensfield store to stock up on some memorabilia.
While in Goathland you can also visit the North York Moors Railway station that doubled up as Hogsmeade in the Harry Potter films.
The stunning backdrop of Aysgarth Falls was used to great effect in Robin Hood Prince of Thieves. You may remember Kevin Costner in his heyday ending up in the river after battling with Little John. It's a classic scene from this iconic 90s movie and showcases the magnificent falls beautifully.
Calendar Girls is of course the wonderful true story of 12 ladies from a Yorkshire WI who dared to bare all in order to raise money for Leukaemia Research. The inevitable film starring Helen Mirren was filmed in and around Kettlewell and a "Calendar Girls Trail" brochure can be bought at the local shops and pubs. It gives information on the landmarks and buildings used in the film.
This beautiful village of Esholt near Shipley was home to Emmerdale from 1976 until 1994 with the pub doubling as the Emmerdale local. Although it's now filmed in a Leeds studio with the village recreated on the Harewood House estate you can still pay a visit to The Woolpack in Esholt and see the many original cast photos inside.
If you fancy following in the footsteps of the Emmerdale locals and visiting Hotten for a bit of shopping, you should head to the market town of Otley that doubles as this town.
This Grade I listed 18th century country house is situated on the banks on the River Ure near Boroughbridge in North Yorkshire. Within the house there are collections of paintings, furniture and other historic items while outside there are woodland walks and herbaceous borders.
Newby Hall was used for a 2007 ITV adaptation of the classic Jane Austen novel Mansfield Park.
The well-loved TV series ran for seven series between 1979 and 1990 and was based on the classic books which told the stories of Yorkshire vet, James Herriot.
The World of James Herriot in Thirsk allows visitors to immerse themselves in the world of this 1940s vet and has the largest collection of Herriot memorabilia in the world. It is also worth heading into local Dales towns and villages such as Askrigg, Hawes and Malton to find more filming locations.
Fans of the Harry Potter films will probably remember Harry and Hermione setting up camp in the Yorkshire Dales while preparing for their final battle with Voldemort. The spot that they picked was the Limestone Pavement at the top of Malham Cove and the film highlights some of the stunning scenery of this region with views across Malhamdale including Cawden and Kirby Malham.
I have always loved The Railway Children and the film version with Jenny Agutter was filmed right here in Yorkshire at the Keighley and Worth Valley Railway. Relive this classic film (it was always one of my favourites) by visiting Oakworth station which was one of the main locations for the film.
Alternatively, a circular 2.5-mile walk from Haworth station takes in many of The Railway Children's iconic scenes.
Castle Howard is a magnificent 18th century building set within the stunning Howardian Hills. It is best known as the setting for two adaptations of Brideshead Revisited and for many the impressive stately home is eponymous with this classic novel.
Castle Howard has also been used in a variety of other film and TV series including Death Comes to Pemberley in 2013 and the current series of Victoria.
Harewood House was one of the key filming locations for Victoria and its magnificent rooms have been transformed into Buckingham and Kensington Palaces. In celebration of this many of the costumes used in the drama will form part of a Victoria exhibition in 2017.


text:
Anime / Currently Covering / First Impressions / Shin no Nakama
Shin no Nakama Episode 1 [First Impression]
by Eva · Published October 6, 2021 · Updated October 13, 2021
Eva's First Impression
Well it turns out after watching this, I couldn't help but write about it! This past summer I have been reading the first volume of the series, and while I have read past the point this episode had covered (chapter 1), I have yet to finish it the volume. That's why I was inclined to wanted to try out the anime, to see if it gets more interesting to motivate me to get back to finishing the first volume and justify picking up the second.
Shin no Nakama AKA: Banished from the Heroes' Party I Decided to Live a Quiet Life in the Countryside, is exactly as the title describe it to be. (Also bonus points: It's not an Isekai!)
In this world, everyone is bestowed with a Divine Blessing which grants them the skills based on their type (ie: mage = magic). The protagonist Gibeon Ragnason was blessed with the Guide skill, said to be dedicated to the Hero (his sister, Ruti Ragnason) during the first leg of her journey. While he possesses the strength of a veteran knight since birth, the problem is that his skill has supposedly peaked, and he was no longer able to keep up to par with the rest of the Hero's team. As result he was told to leave because he was deemed as deadweight, so he agreed to leave and decided to settle down and start anew in Zoltan, a remote town situated as the "end of the world". There he cast aside his old name and goes by Red, pursuing a new drema of opening an Apothecary.
This episode pretty much covers the gist of it, and ends with Red opening his Apothecary. It was a slow opener, just as slow as I remember it being in the novel, but I did find it to be a bit more enjoyable as it was able to hold my attention better than the book did. However the one thing that didn't change was what was what made me think, "Ehhhhh…" when I was reading the first half remained the same: How Red was told to leave the Hero's Team, which I think played a big part of killing my interest within the first chapter.
So basically Ares (an obnoxious mage from the Hero's team (with a very punchable face)) told Red to leave the party because he has become dead-weight to the team, and he was doing this because Ruti, (who is also Red's sister and the blessed Hero) is not the type abandon her comrades. I don't know if it was because the execution of it was lacking or just the plain reasoning for it (especially since it was only coming from Ares), but whatever it was, I wasn't really convince by it. For all I know, it might be because I was trying to wrap my head around how Red, who was described to have the strength of a veteran knight since the moment he was born, and is someone who has the title as the second-in-command of the Bahamut Knights, is being described to be unbearably weak. We are given a somewhat questionable example with Ares challenging Red to break his barrier with a bronze sword, which he fails to do- and yet we later see he is capable of taking out an (albeit, already wounded) Owlbear that a B-Ranked Adventurer and their team struggled to kill. The lack of context of his strength puts a big question mark on where exactly, his strength peaks at. So it begs the question: Is he really that weak, or are the members of the Hero's party just that over-powered?
I suppose it depends on how you look at it. Admittedly I didn't think this hard when I was reading it, but after I watching this and thinking about it some more, I am leaning more towards the idea that the Hero's team is OP. This would kind of make sense given this is the "Hero Unit" that is dedicated to basically mowing down the monsters ravaging the lands because the average knights are being overwhelming by the enemy's forces. In that sense, perhaps Red's abilities would be better to be measured up to that, or maybe he is somewhere in between the two. Not quite OP, but is still stronger than an average Knight. And based on the fact he was able to one-shot that Owlbear with the very same bronze-sword that couldn't break Ares' barrier, and our comparison with the B-Ranked Knight Albert and his team had to continuously pursue it and recklessly set the forest ablaze to take it down, I am going to go along with the guess that Red is actually somewhere between A and S Ranked, while the Hero's unit is something like SS+, you know since they are super special kind of thing. This is all early speculation of course. But we did see how Red actually has some pretty nifty skills that could be perceived as OP such as: Endurance Mastery: Fatigue Immunity and High-Speed Mastery: Lightning Speed, however he did mention that his "Guide" skills tends to be the amongst the common skills, so perhaps the fact he didn't have an exclusively unique skill-set that makes him beneficial in battle is why he fell behind the rest. Needless to say, I still can't help but harbor some doubt in Are's explanation.
Anyhow, regardless how I felt about it, since Red agreed to leave the team, there was no real kerfuffle about it. The only thing he asked was to be claimed as MIA so he doesn't tarnish the Bahamut Knight's honor, which I think was a fair enough given, it would be freaking awkward and humiliating to return from a hero's team under such pretense. But if there's one thing this whole fiasco did show us, is that Red himself was already aware that he wasn't contributing as much as the others, and the only reason he was sticking around was to look out for his sister.
But of course, Ares just couldn't leave him be when the guy already peacefully agreed to leave by telling him to leave behind his equipment because he "didn't earn it"! Arg, I can't stand characters like him! It's pretty clear that Ares holds something against him (beyond him being dead-weight) – all the more reason why I'd rather hear from the rest of the team what they thought of Gideon's contributions (even if it might tick me off).
That said, Red isn't exactly a stand out protagonist. As of this premiere (and chapter), he really didn't offer or do anything that makes me think, "I really like this character", so it would be accurate to say there just wasn't enough for me to judge him on this episode alone. But I guess it's enough to think he doesn't completely bore me at least. He is somewhat a quiet character, mainly because he is going out of his way to lay low, as he doesn't to draw attention to history to the villager (though at least one of them already have strong suspicions of his past as a knight), which is why he doesn't care for raising his adventurer Rank D any higher than it already is. He even outright refuses to cooperate with an adventurer who was searching for someone with Guide skill to help them traverse the forest to hunt the Owlbear. After-all, his goal is to run an apothecary and lead a simple life. However, he did show us he is willing to step up to the plate when medical attention is urgently needed, which make sense given his job. There was crisis at hand when Tanta, a child he is acquainted with was inflicted with White-Eye that will make the victim go blind within 24 hours if failed to be treated. Except this it was a bit more complicated because the mountains where the ingredients he needed grow were off-limits. Defying the order could expel him from the Adventurer Guild, yet Red still readily went. Thankfully he did, because he was able to salvage some of the Blood-Pines that were essential medical ingredients from the fires recklessly lit by the party hunting the rampaging Owlbear.
At the very least, his efforts were recognized, and by successfully obtaining the Blood-Pines needed to treat Tanta's White Eye, Red was able to finally build and open Apothecary. It will certainly be helpful to have a shop of the likes in a fairly isolated town. However I am certainly more interested in seeing what kind of relationship he and the female lead will have together. Both OP and ED sequences certainly gives off a married life vibe, and I'd be lying if I said that isn't my main source of curiosity right now, so it is definitely playing a part in giving this series the benefit of the doubt. I also want to see if the story improves as everyone says it will beyond Vol 1.
So it looks like I might give this one up to three episodes to see if it'll grow on me after-all. I still have two more shows coming up that I am still considering, so it all comes down to which ones clicks best with me by the end of the week.
Possibility of Blogging: Moderate
Possibility of Watching: Moderate
Tags: anime 2021Anime Reviewbanished from the heroes' partyBanished from the Heroes' Party I Decided to Live a Quiet Life in the CountrysideFall Anime 2021first impressionShin no NakamaShin no Nakama janai to Yuusha no Party wo Oidasareta node Henkyou de Slow Life suru Koto ni shimashita
Blogging Anime since Summer 2009, & Founder of AngryAnimeBitches Anime Blog ...I may or may not be addicted to writing
Hentai Ouji to Warawanai Neko Episode 9: The Happy Prince
by Chris · Published June 9, 2013
Arcana Famiglia Episode 4: The Fool and His Mask
by Kaitou · Published July 23, 2012
Yu-Gi-Oh ARC-V Episode 94: The True King
by Eva · Published February 22, 2016 · Last modified April 1, 2020
zztop says:
A game version of Banished From the Heroes' Party has already released on Steam.
https://store.steampowered.com/app/1581800/Slow_living_with_Princess/
As for your issue on why Red easily buckled to Ares' provocation :
As you said, say he's an A-rank while his partners are SS+. What if he couldn't grow any further beyond his level, and was always inwardly insecure about how he lacked in power level compared to the rest of the team? And what if he was always feeling low, to the point that some well-placed cruel words from certain schemers would finally convince him that he wasn't needed anymore and had to go?
Fair enough, if it boiled down to the lack of confidence from being constantly compared to outrageously OP teammates, then yes, it does make sense.
I'm happy to find an Isekai series with a male protagonist that doesn't have many girls crushing over him. Most of Isekai series with a male protagonist that I found were harem where the protagonist couldn't choose one girl and just marry them all or the sort. It's boring, to be honest (and personally, I'm not too fond of polygamy protagonist).
That four-eyes (I won't bother remembering his name) sure is the typical arrogant guy whom I want to punch. Seriously, Red should have more confidence in himself. So what if he's "weaker" than the rest of his teammates, strength and power are not the only things that determined the outcome of battle, especially when working in a group. You are far from being a deadweight, Red! NO!
Next story Love Live! Superstar!! Episode 10
Previous story Kyoukai Senki Episode 1 [First Impression]

redpajama_set_name: RedPajamaCommonCrawl


Is Activiti able to integrate with other ECM products?
Hi, Apologies for this basic question - is it possible to have activiti integrate with other ECMs such as documentum? - in our case, the process documents need to be in a ECM doc repository. Would appreciate your response. Thanks.
Since Activiti supports REST, you can easily integrate it with any external system.
Indeed, or use CMIS in a Java Service task.


text:
Q: Android Studio Room & DAO: Impossible to Catch SQLiteDatabaseCorruptException First of all, the database corruption is INTENTIONAL, it is a test for a invalid database file upload.
My problem is that the exception (SQLiteDatabaseCorruptException) appears inside the DAO autogenerated java code:
at com.cormorant.fishingtracker.database.DBDao_Impl$234.compute(DBDao_Impl.java:10024)
So I can't try-catch it! It occurs inside AsyncTask but the exception was not captured! I have tried:
protected void openDatabase(OnOpenDatabaseResult onOpenDatabaseResult) {
        dataRepository.openDatabase(getApplication());
        try {
            dataRepository.getRecordsCount(null, new DataRepository.AsyncResponse<Long>() {
                @Override
                public void processFinish(Long output) {
                    onOpenDatabaseResult.onResult(output!=null);
                }
            });
        } catch (Exception exception) {
            exception.printStackTrace();
            onOpenDatabaseResult.onResult(false);
        }
    }

And also inside the AsyncTask:
public class getRecordsCountAsyncTask extends executeOutAsyncTask<Long> {

        getRecordsCountAsyncTask(DBDao dao, Class<? extends Base> klass, AsyncResponse<Long> delegate) {
            super(dao, klass, delegate);
        }

        @Override
        protected Long newDoInBackground() {
            if (mClass== null) {
                Long ret;
                try {
                    ret = mAsyncTaskDao.countTables();
                } catch (Exception exception) {
                    ret =null;
                    exception.printStackTrace();
                }
                return ret;
            }
...

How to detect the corrupted file when opening the database (code below)?
    public static DBRoom getDatabase(final Context context) {
        context_ = context;
        if (INSTANCE == null) {
            synchronized (DBRoom.class) {
                INSTANCE = Room.databaseBuilder(context.getApplicationContext(),
                        DBRoom.class, dbFileName)
                        .addMigrations(MIGRATION_1_2,MIGRATION_2_3,MIGRATION_3_4,MIGRATION_4_5)
                        .fallbackToDestructiveMigration() // Wipes and rebuilds instead of migrating if no Migration object.
                        .addCallback(sRoomDatabaseCallback)
                        .build();
            }
        }
        return INSTANCE;
    }

The entire log:

04-28 11:20:44.218 12854-12879/com.cormorant.fishingtracker E/SQLiteLog: (26) file is encrypted or is not a database
04-28 11:20:44.219 12854-12879/com.cormorant.fishingtracker E/SQLiteLog: (26) file is encrypted or is not a database
04-28 11:20:44.219 12854-12879/com.cormorant.fishingtracker E/SQLiteDatabase: Failed to open database '/data/user/0/com.cormorant.fishingtracker/databases/fishingtracker'.
    android.database.sqlite.SQLiteDatabaseCorruptException: file is encrypted or is not a database (code 26): , while compiling: PRAGMA journal_mode
        at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
        at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:887)
        at android.database.sqlite.SQLiteConnection.executeForString(SQLiteConnection.java:632)
        at android.database.sqlite.SQLiteConnection.setJournalMode(SQLiteConnection.java:318)
        at android.database.sqlite.SQLiteConnection.setWalModeFromConfiguration(SQLiteConnection.java:289)
        at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:213)
        at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:191)
        at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:463)
        at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:185)
        at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:177)
        at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:806)
        at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:794)
        at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:694)
        at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:571)
        at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:269)
        at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:223)
        at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:163)
        at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper$OpenHelper.getWritableSupportDatabase(FrameworkSQLiteOpenHelper.java:96)
        at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper.getWritableDatabase(FrameworkSQLiteOpenHelper.java:54)
        at androidx.room.RoomDatabase.query(RoomDatabase.java:238)
        at com.cormorant.fishingtracker.database.DBDao_Impl$209.compute(DBDao_Impl.java:8046)
        at com.cormorant.fishingtracker.database.DBDao_Impl$209.compute(DBDao_Impl.java:8032)
        at androidx.lifecycle.ComputableLiveData$2.run(ComputableLiveData.java:101)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
        at java.lang.Thread.run(Thread.java:818)
04-28 11:20:44.222 12854-12881/com.cormorant.fishingtracker E/SQLiteLog: (26) file is encrypted or is not a database
04-28 11:20:44.223 12854-12881/com.cormorant.fishingtracker E/SQLiteLog: (26) file is encrypted or is not a database

    --------- beginning of crash
04-28 11:20:44.224 12854-12879/com.cormorant.fishingtracker E/AndroidRuntime: FATAL EXCEPTION: arch_disk_io_0
    Process: com.cormorant.fishingtracker, PID: 12854
    android.database.sqlite.SQLiteDatabaseCorruptException: file is encrypted or is not a database (code 26): , while compiling: PRAGMA journal_mode
        at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
        at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:887)
        at android.database.sqlite.SQLiteConnection.executeForString(SQLiteConnection.java:632)
        at android.database.sqlite.SQLiteConnection.setJournalMode(SQLiteConnection.java:318)
        at android.database.sqlite.SQLiteConnection.setWalModeFromConfiguration(SQLiteConnection.java:289)
        at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:213)
        at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:191)
        at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:463)
        at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:185)
        at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:177)
        at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:806)
        at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:794)
        at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:694)
        at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:571)
        at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:269)
        at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:223)
        at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:163)
        at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper$OpenHelper.getWritableSupportDatabase(FrameworkSQLiteOpenHelper.java:96)
        at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper.getWritableDatabase(FrameworkSQLiteOpenHelper.java:54)
        at androidx.room.RoomDatabase.query(RoomDatabase.java:238)
        at com.cormorant.fishingtracker.database.DBDao_Impl$209.compute(DBDao_Impl.java:8046)
        at com.cormorant.fishingtracker.database.DBDao_Impl$209.compute(DBDao_Impl.java:8032)
        at androidx.lifecycle.ComputableLiveData$2.run(ComputableLiveData.java:101)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
        at java.lang.Thread.run(Thread.java:818)
04-28 11:20:44.228 12854-12881/? E/SQLiteDatabase: Failed to open database '/data/user/0/com.cormorant.fishingtracker/databases/fishingtracker'.
    android.database.sqlite.SQLiteDatabaseCorruptException: file is encrypted or is not a database (code 26): , while compiling: PRAGMA journal_mode
        at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
        at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:887)
        at android.database.sqlite.SQLiteConnection.executeForString(SQLiteConnection.java:632)
        at android.database.sqlite.SQLiteConnection.setJournalMode(SQLiteConnection.java:318)
        at android.database.sqlite.SQLiteConnection.setWalModeFromConfiguration(SQLiteConnection.java:289)
        at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:213)
        at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:191)
        at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:463)
        at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:185)
        at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:177)
        at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:806)
        at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:794)
        at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:694)
        at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:571)
        at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:269)
        at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:223)
        at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:163)
        at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper$OpenHelper.getWritableSupportDatabase(FrameworkSQLiteOpenHelper.java:96)
        at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper.getWritableDatabase(FrameworkSQLiteOpenHelper.java:54)
        at androidx.room.RoomDatabase.query(RoomDatabase.java:238)
        at com.cormorant.fishingtracker.database.DBDao_Impl$217.compute(DBDao_Impl.java:8772)
        at com.cormorant.fishingtracker.database.DBDao_Impl$217.compute(DBDao_Impl.java:8758)
        at androidx.lifecycle.ComputableLiveData$2.run(ComputableLiveData.java:101)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
        at java.lang.Thread.run(Thread.java:818)
04-28 11:20:44.229 12854-12880/? E/SQLiteLog: (26) file is encrypted or is not a database
04-28 11:20:44.229 12854-12880/? E/SQLiteLog: (26) file is encrypted or is not a database
04-28 11:20:44.235 12854-12881/? I/Process: Sending signal. PID: 12854 SIG: 9

redpajama_set_name: RedPajamaStackExchange


Product prices and availability are accurate as of 2019-04-11 16:46:53 UTC and are subject to change. Any price and availability information displayed on http://www.amazon.com/ at the time of purchase will apply to the purchase of this product.
Nerdy Computers, Laptops and Tablets are presently offering the sought after Dell XPS9560-5000SLV-PUS 15.6" Traditional Laptop (Silver) for a brilliant price. Don't pass it by - purchase the Dell XPS9560-5000SLV-PUS 15.6" Traditional Laptop (Silver) here now!


text:
Mohammed Lakhdar-Hamina (), född 26 februari 1934 i M'Sila, är en algerisk  filmregissör och manusförfattare. Bland hans verk finns De glödande åren, som vann Guldpalmen vid Filmfestivalen i Cannes 1975.

Referenser

Externa länkar

Män
Levande personer
Födda 1934
Algeriska filmregissörer

redpajama_set_name: RedPajamaWikipedia


I decided to make October interesting and sign up to a virtual race with Run Your Own Races. After searching through the site I really liked the look of their wolf medal and to earn this I needed to complete 100km in the month. I worked out I had a marathon, 5k and 10k race booked giving me more than half the required amount needed, surely I could do the rest?
October started with a long flight over to Chicago. First run of the month saw my eldest daughter and I complete the International 5km run through the streets of Chicago. It was such an amazing experience, and if I lived closer one I would do regularly.
As I was boarding the plane home from Chicago I received an email asking if I would like to be part of a relay time for the Yorkshire marathon. It was an offer I could not refuse. I would be given the opportunity to run part of the Yorkshire marathon, a course I have many demons on, without running the whole thing. I said yes and was advised my leg would be 5km.
Before the relay I had never met any of my team mates before, so upon arrival I had no idea who to look for or what to expect. I was a little nervous, what if they were all elite athletes and there is me with jet lag and tired legs. Well I thought, it's only 5km. Only upon meeting my team I was asked if I wanted to change legs and do the 8km leg instead, I knew the route and the past two times I ran the full marathon this is where I messed up so I agreed. I thought it would give me a chance to put things right.
The heavens had opened and it was a very wet run. We stood and chatted at the change over point waiting for our team mates to arrive and pass over the baton. I was just trying to remember what my team mate looked like and had to rough guess when they would show up. I would stand out in the rain waiting for them to arrive and then nip quickly back in the double decker bus in a bid to warm back up. I had given my foil blanket away to a small dog who was making it very well known how cold and wet they were, and then I gave my second to a small child who was equally as cold.
I watched the front runners whizz past and cheered on a friend, I waited to see my other friends further down the pack come past and cheered them on also. It was soon my turn and I began to run. It was strange starting on fresh legs when the marathon runners are at mile 17. I dodged as many people as I could and ran a very comfortable, but rainy, 5 miles to hand over the baton.
A marshall told me I could either wait 30 minutes or continue running with my team mate so I opted to keep running. It was only 5km to the end now. We chatted as we went and watched the weary marathon runners. It was such a strange sensation to be running with people who had completed 20 miles plus. I knew how each of them felt. It wasn't long before the iconic final hill lay in front of us and with it I had completed 13km of the Yorkshire marathon. The 100km challenge was looking more and more likely now, 30 km left to do and a 10km race still to come.
An opportunity to run on the track arose in the middle of the month and so I decided to give it a go. It has been a while since I have run on the track and I wasn't sure I had any speed in my legs to be honest. I gave it my best shot, but left a little disappointed knowing in the past I have done mych better. Still it was another 10km ticked off the list, nearly there now.
A steady and enjoyable club run followed by a parkrun with the eldest and all that was remaining before my 10km race was 15km to complete 100km. I was so close now. Scarborough 10km was my race. I will admit my legs were tired. I wasn't sure if I could get round or even run it all but I would certainly give it a go.
We booked a hotel for the night before, my Mum came and stayed with me and the kids and we had a mini holiday. It was actually really lovely and I would certainly do it again. The hotel was located at the 3km mark so I had a short walk in the morning to the start line. Watching the sun rise as I walked was just amazing and I felt really chilled going into the run.
Miles ticked by and before I knew it I was back into the South Bay and heading towards the finish. My children once again stood waving and cheering. It was so lovely to see them and that gave me the extra strength I needed to finish. It wasn't a great time and was way off the pace I would normal do but still I have to be happy with the fact I got round.
There was confusion with the kids fun run, originally a point to point course. I had sent my Mum to the finish line to wait, and now it was a loop. Little Man was not that bothered and I ended up carrying him most of it. The girls however did amazingly well.
I was still a couple of Km's short of the challenge so there was only one thing to do, run! I decided to test J and see how he would cope and I was so surprised he managed 6 miles or 10km and not complain about his leg once! It was just great to be running with him again.
That final run with J meant I completed my challenge and achiever over 100km in October. The medal, by the way, is awesome!!


text:
Q: Crop Image Located in Internal Storage I am having trouble using the crop intent in Android.
I am storing images in the internal storage allocation for my app and I want to be able to crop them and then set them as the wallpaper.
I can get it to work with an image stored in external storage and using this code:
cropIntent.setDataAndType(Uri.fromFile(new File(uri)), "image/*");

When I execute the code below the intent fails to launch the crop intent and a 0 result code is returned.
Intent cropIntent = new Intent("com.android.camera.action.CROP");

cropIntent.setDataAndType(FileProvider.getUriForFile(activity, "com.example.test.fileprovider", new File(uri)), "image/*");

cropIntent.putExtra("crop", "true");
cropIntent.putExtra("aspectX", 9);
cropIntent.putExtra("aspectY", 16);
cropIntent.putExtra("return-data", true);
cropIntent.putExtra("scale", true);

activity.startActivityForResult(cropIntent, PIC_CROP);

A: From Storage Options | Android Developers:

By default, files saved to the internal storage are private to your application and other applications cannot access them (nor can the user).

ACTION_CROP launches an "other application" that supports cropping, and passes it the URI of the file to crop.  If that file is in internal storage, it is not directly accessible to the cropping application.
Using a FileProvider to provide an internal file to other apps requires some configuration.  From Setting Up File Sharing | Android Developers:

Specify the FileProvider
Defining a FileProvider for your app requires an entry in your manifest. This entry specifies the authority to use in generating content URIs, as well as the name of an XML file that specifies the directories your app can share.
<snip>
Specify Sharable Directories
Once you have added the FileProvider to your app manifest, you need to specify the directories that contain the files you want to share. To specify the directories, start by creating the file filepaths.xml in the res/xml/ subdirectory of your project.

The following FileProvider sample integrates your code and successfully opens the crop activity on an image in internal storage (tested on a Nexus 5, stock Android 5.1.1):
AndroidManifest.xml
    <application
        ...>
        <provider
            android:name="android.support.v4.content.FileProvider"
            android:authorities="com.example.test.fileprovider"
            android:grantUriPermissions="true"
            android:exported="false">
            <meta-data
                android:name="android.support.FILE_PROVIDER_PATHS"
                android:resource="@xml/filepaths" />
        </provider>
        ...
    </application>

res/xml/filepaths.xml
<paths>
    <files-path path="images/" name="images" />
</paths>

MainActivity.java
            // Manually stored image for testing
            final File imagePath = new File(getFilesDir(), "images");
            final File imageFile = new File(imagePath, "sample.jpg");

            // Provider authority string must match the one declared in AndroidManifest.xml
            final Uri providedUri = FileProvider.getUriForFile(
                    MainActivity.this, "com.example.test.fileprovider", imageFile);

            Intent cropIntent = new Intent("com.android.camera.action.CROP");

            cropIntent.setDataAndType(providedUri, "image/*");

            cropIntent.putExtra("crop", "true");
            cropIntent.putExtra("aspectX", 9);
            cropIntent.putExtra("aspectY", 16);
            cropIntent.putExtra("return-data", true);
            cropIntent.putExtra("scale", true);

            // Exception will be thrown if read permission isn't granted
            cropIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);

            startActivityForResult(cropIntent, PIC_CROP);


You can view pictures of just some of our cakes below! Simply use the drop down menu to select a type or use the search box.
Note: We are currently updating our pictures so please bear with us if you are experience slow load times or limited functionality. Thanks!


text:
Rockefeller Center deputy director co-authors book
by Anthony Robles | 8/10/18 2:25am
On July 27, 2018, Sadhana Hall, deputy director of the Rockefeller Center for Public Policy, and Gama Perruci, professor of leadership studies at Marietta College published the book "Teaching Leadership: Bridging Theory and Practice." Since its publication, the book has topped the Amazon New Releases chart in Social Studies Teaching Materials and currently ranks at number three on the list.
The book focuses on the idea of whether leadership can be taught, said Perruci. He said that the book gives educators — or anyone interested in leadership development — useful resources that apply to both the theory and practice of leadership development.
"There's always been this debate about whether leadership can be taught," Hall said. "This has been a debate in the field of leadership for quite a while, and through mine and Gama's experience in the field, we strongly believe that it can be taught."
The idea for the book began when the executive editor at Edward Elgar Publishing reached out to Perruci and asked him about writing a book about teaching. Perruci, who also serves as the Dean of the Bernard P. McDonough Center for Leadership and Business at Marietta, then recruited Hall to serve as a co-writer on the project because he wanted to add another "leadership program to the book so it would add more depth for the readers."
"The leadership programming initiatives at Dartmouth are of really high quality, so that was really a big plus for the book — to highlight two programs that I think are doing very interesting work," Perruci said.
Perruci said that his experience working with Hall was "delightful" and that she was a "great co-author." He added that working with a co-author gave him an opportunity to work with somebody who would explore and share ideas at a deep level. Hall echoed Perruci's sentiment, remarking that although co-authoring a book presents its own set of unique challenges, it was an "absolute pleasure" to work with Perruci.
"He is not only thoughtful, but also extremely supportive," Hall said. "He really gets the Rockefeller Center program, so it makes it very easy to translate the theoretical side of what he is focusing on and connect it to the experiential side of learning about leadership, learning about yourself, learning how you work within teams and organizations to achieve societal good."
Hall said that there were three conceptual approaches to teaching leadership: studying leadership, building competency and focusing on leadership development. She added that the book framed the teaching of leadership through four levels of analysis: the individual, the team or community, the organizational level and the global level. Hall added that the combination of all of these elements is key to the teaching of leadership.
Perruci said that the introduction of the book tells readers to "feel free to adopt and adjust" the book's teachings to their own unique situation. Hall concurred, noting that adopting the teachings of the book to suit the reader's own situation is a necessity, as it is impossible to replicate anything from one environment to another.
"We really hope that they will find [the book] stimulating, while also giving them great ideas for their own programs and their own initiatives," Perruci said.
Tags: news, featured
Dartmouth majors yield wide range of salaries, per federal data
Rise Together! events at College honor MLK
Two-day PE camping and hiking trips not offered in spring


Five Truths that Make Medical Malpractice Cases Difficult to Pursue for Personal Injury Lawyers - Noble Law Firm P.A.
Even if you prove fault on the part of the doctor, your ultimate recovery may be offset by the extreme expense of litigating such tort actions as well as statutory caps on each particular medical malpractice recovery.
Contact the Attorneys of The Noble Law Firm, P.A. to assist you with your personal injury case and help you obtain the personal injury award you deserve!
This entry was posted in General, Personal Injury. Bookmark the permalink.


text:
Monopolar transurethral resection of the prostate versus holmium laser enucleation in men with prostate volume greater than 100 mL
Chun-Kai Chang1, Cheng-Hsueh Lee1, Chun-Hsuan Lin1, Ching-Chia Li1, Sheng-Chen Wen1, Hsin-Chih Yeh2, Jiun-Hung Geng3
1 Department of Urology, Kaohsiung Medical University Hospital, Kaohsiung Medical University, Kaohsiung City, Taiwan
2 1Department of Urology, Kaohsiung Medical University Hospital, Kaohsiung Medical University; Department of Urology, Kaohsiung Municipal Ta-Tung Hospital, Kaohsiung City, Taiwan
3 Department of Urology, Kaohsiung Medical University Hospital, Kaohsiung Medical University; Department of Urology, Kaohsiung Municipal Siaogang Hospital, Kaohsiung City, Taiwan
Date of Submission 05-Aug-2021
Date of Decision 28-Sep-2021
Date of Acceptance 14-Oct-2021
Jiun-Hung Geng
Department of Urology, Kaohsiung Medical University Hospital, Kaohsiung Medical University, Kaohsiung City, Taiwan 100, Shih-Chuan 1st Road, Kaohsiung 80708
DOI: 10.4103/UROS.UROS_114_21
Purpose: The surgical treatment for severe benign prostatic hyperplasia is challenging. The aim of our study was to compare the safety and efficacy of monopolar transurethral resection of the prostate (M-TURP) and holmium laser enucleation of the prostate (HOLEP) for prostate size >100 ml. Materials and Methods: We retrospectively evaluated our database of two groups of patients. Thirteen patients underwent M-TURP (group 1), and 27 underwent HOLEP (group 2). Results: The mean prostate size was 163.1 ± 49.0 ml in group 1 and 143.4 ± 40.9 ml in group 2 (P = 0.19). There was no significant difference in resected tissue volume, days of catheter removal, admission days, and postoperative serum hemoglobin between treatment groups. However, in group 1, mean postoperative serum sodium dropped from 137.1 mmol/L to 131.4 mmol/L, which was significantly lower than postoperative serum sodium in group 2 (P < 0.0001). There were more complications in group 1 than group 2, especially for patients undergoing transfusion (76.9% in group 1 and 22.2% in group 2) and with hyponatremia (15.4% in group 1 and 0% in group 2). At 3-month follow-up, the international prostate symptom score, quality of life score, and residual urine volume revealed no significant differences between groups. Conclusion: M-TURP and HOLEP in men with prostate volume greater 100 ml had similar operative time, admission days and postoperative functional outcomes. However, higher transfusion rates and postoperative hyponatremia were noted in the M-TURP group comparing to the HOLEP group.
Keywords: Complications, laser therapy, prostatic hyperplasia, transurethral resection of prostate, treatment outcome
Chang CK, Lee CH, Lin CH, Li CC, Wen SC, Yeh HC, Geng JH. Monopolar transurethral resection of the prostate versus holmium laser enucleation in men with prostate volume greater than 100 mL. Urol Sci 2022;33:70-6
Chang CK, Lee CH, Lin CH, Li CC, Wen SC, Yeh HC, Geng JH. Monopolar transurethral resection of the prostate versus holmium laser enucleation in men with prostate volume greater than 100 mL. Urol Sci [serial online] 2022 [cited 2023 Jan 31];33:70-6. Available from: https://www.e-urol-sci.com/text.asp?2022/33/2/70/341250
Treatment for severe benign prostatic hyperplasia (BPH), especially with prostate volume >100 mL, is challenging. When pharmacological treatments fail,[1] further management includes surgery. In the guidelines, the recommended surgery for severe BPH (>80–100 mL) is laser enucleation of the prostate using Ho: YAG laser holmium laser enucleation of the prostate (HOLEP) or open prostatectomy. Monopolar transurethral resection of the prostate (M-TURP) is reserved for prostate glands between 30 mL and 80 mL.[2],[3],[4] However, various devices and approaches to improve the efficacy and safety of M-TURP have been proposed, including continuous-flow resectoscopes, video-assisted resection, high-frequency cutting/coagulating systems, microprocessor-controlled electrical units, and modified shape of cutting loops, which allow M-TURP to be performed in larger glands than previously reported and make it rational to be compared with laser enucleation.[5] Muzzonigro et al. prospectively compared patients with prostate volume <70 mL and prostate volume between 70 and 150 mL who underwent M-TURP.[6] The results showed that both groups had significant improvement in international prostate symptom score (IPSS), maximum flow rate (Qmax), and postvoid residual (PVR) volume after 1 year of follow-up and there was no difference in complication rates between groups. They concluded that M-TURP is a reliable surgery for large prostate glands with similar complication rate.[6] Moreover, there have been several reports on the application of M-TURP on large prostate glands with volume >80–100 mL.[7],[8] In the surgical management of severe BPH, M-TURP remains the reference standard.[9] Several studies have attempted to evaluate the efficacy and safety of various procedures in prostate glands with volume >80–100 mL, as shown in [Table 1]. Kuntz and Lehrich[10] and Naspro et al.[11] compared the efficacy and safety of HOLEP and open surgery. They concluded that HOLEP had similar functional results and less perioperative morbidity compared with open surgery. Based on these large, randomized controlled trials, the urologic community has embraced HOLEP as the standard surgical therapy for BPH, especially with large prostate glands. Another laser prostatectomy surgery, photoselective potassium titanyl phosphate (KTP), has also attempted to deal with large prostate glands. However, Horasanli et al. compared the results of KTP and M-TURP and concluded that M-TURP was superior to KTP in patients with large prostate glands. In early 2000, bipolar TURP in the saline system technique was developed. Kwon et al.,[8] Bhansali et al.,[12] and Raghuvanshi et al.[13] evaluated the functional results and morbidities of bipolar versus M-TURP in men with large prostate glands and deduced that bipolar TURP had all features of gold-standard M-TURP, along with added safety and efficacy. Then, a randomized control trial analyzed the surgical outcomes of open versus M-TURP for prostate glands >80 g and found that transvesical prostatectomy might be more effective than M-TURP.[14] However, another study by Persu et al.[5] showed different results, which revealed comparable safety and efficacy between open surgery and M-TURP.
Table 1: Summary of characteristics and outcomes comparing various procedures in prostate glands larger than 80 mL
We found other comparisons of various procedures[15],[16] in large prostate glands, as shown in [Table 1], but no study directly compared M-TURP and HOLEP for large prostate glands with volume >100 mL. Despite the more prevalent use of bipolar TURP and HOLEP for large BPH, we considered whether M-TURP could deal with large prostate conditions well because not every hospital has a new technology and not every patient could pay for the treatment. Bipolar TURP has reduced risk of hyponatremia and TUR syndrome than M-TURP, but evidence indicates that complications of M-TURP, especially TUR syndrome, have decreased from 1989 (1.1%) to 2005 (0%).[17] Herein, we present our clinical experiences on the safety and efficacy of M-TURP versus HOLEP for large prostate glands with volume >100 mL.
From July 2009 to January 2019, we retrospectively found 13 patients who underwent M-TURP (group 1) and 27 patients who underwent HOLEP (group 2). All patients had lower urinary tract symptoms (LUTS) due to BPH at our department, and all of them had prostate gland volume >100 mL. Preoperatively, all subjects underwent a regular and urological evaluation by digital rectal examination (DRE), suprapubic ultrasonography with assessment of prostate volume using the prostate ellipse formula (height × width × length × 0.52), urinalysis, serum prostate-specific antigen (PSA) level, and blood analysis (e.g., serum Na + and hemoglobin levels). Symptom severity was evaluated preoperatively by IPSS, quality of life (QOL), Qmax and PVR. In patients with PSA level >4 ng/dL, abnormal DRE finding and suspicious hypoechoic lesions were detected when ultrasonography and transrectal ultrasonographic-guided prostate biopsy were performed. If patients have urine retention before surgery, we will collect the Qmax and PVR data closest to the surgery for analysis. The inclusion criteria were prostate gland volume >100 mL and provision of informed consent. The exclusion criteria were evidence or suspicion of prostate or bladder malignancy, IPSS <15, Qmax >15 mL/s, and willingness to receive another treatment. Ethical approval for the study was provided by the Institutional Review Board (IRB) of Kaohsiung Medical University Hospital (KMUHIRB-E (II)-20190363).
M-TURP was performed by using standard 26-Fr resectoscope (unipolar standard resectoscope set, KARL STORZ Gmbh and Co. KG) with a standard loop and continuous sterile water irrigation solution. HOLEP used included 100-W holmium laser (Lumenis, Santa Clara, California), 26-Fr continuous flow laser resectoscope (Olympus, Hamburg, Germany), 550-μm end-firing fiber, and morcellator (VersaCut, Lumenis). Prostatic adenoma was enucleated by en bloc one-lobe technique. Both procedures were introduced through the working channel of the STORZ nephroscope, a ConMed Electrosurgery (SYSTEM 5000TM). None of the patients had cystostomy because the resectoscope set has connecting tubes for inflow and outflow. All patients accepted intravenous antibiotic prophylaxis, and none of them had suprapubic trocar perioperatively.
All procedures were performed by two experienced urologists, and both surgeons had been performing more than 30 HOLEP surgeries before dealing with a large prostate gland. The operative time and weight of the tissue were calculated during the procedure. Postoperatively, we inserted a 22-Fr irrigation catheter, and the balloon, with 30 mL sterile water, was situated in the prostatic fossa. Bladder irrigation was maintained until bleeding stopped; then, the irrigation catheter was removed the next day, and the patient was discharged. Postoperative complications, Qmax, QOL, IPSS, and PVR were assessed at the 3-month follow-up.
Statistical analysis was performed using SPSS version 19.0 (SPSS Inc., Chicago, IL, USA). Descriptive statistics were used to analyze patient characteristics, and the Student t-test was used to compare preoperative, perioperative, and postoperative data and complications. A two-sided P < 0.05 indicated statistical significance.
Preoperative results
Forty patients, including 13 patients in the M-TURP group (group 1) and 27 patients in the HOLEP group (group 2), were enrolled in the study. Patients' demographic characteristics before surgery are presented in [Table 2]. There was no difference in preoperative data between groups 1 and 2. The mean ages were 69.7 ± 10.1 years in group 1 and 72.7 ± 8.6 years in group 2. The mean prostate volumes were 163.1 ± 49.0 g in group 1 and 143.4 ± 40.9 g in group 2. The mean IPSS, QOL, Qmax, and PVR were 26.8 ± 5.7, 5.3 ± 0.9, 4.5 ± 4.7 mL/s, and 227.4 ± 186.4 mL, respectively, in group 1 and 25.1 ± 8.4, 4.7 ± 1.1, 2.2 ± 1.0 mL/s, and 165.8 ± 122.7 mL, respectively, in group 2. All patients had LUTS secondary to BPH for more than 6 months, and seven patients in group 1 and 14 patients in group 2 required Foley catheter insertion preoperatively.
Table 2: Preoperative patient data
Perioperative and postoperative results
The perioperative and postoperative data are shown in [Table 3]. The mean operative times were 108.9 ± 17.6 min in group 1 and 132.4 ± 62.7 min in group 2. The mean resected tissue weights were 119.2 ± 18.9 mL in group 1 and 105.5 ± 31.8 mL in group 2. The days of catheter removal were 5.5 ± 4.7 days in group 1 and 3.5 ± 1.7 days in group 2, while admission days were 5.1 ± 0.3 days in group 1 and 5.0 ± 1.5 days in group 2. The postoperative serum hemoglobin levels were 10.5 ± 1.8 g/L in group 1 and 10.8 ± 1.6 g/L in group 2. No significant differences in operative time, resected tissue volume, days of catheter removal, admission days, and preoperative and postoperative serum hemoglobin levels were found between groups; however, postoperative serum sodium (mmol/L) level were 131.4 ± 3.4 mmol/L in group 1 and 137.4 ± 2.8 in group 2; a significantly lower postoperative serum sodium level was noted in the M-TURP group than in the HOLEP group (P < 0.0001).
Table 3: Perioperative, and postoperative data
Three-month follow-up
The follow-up data of 40 patients (at 3 months postoperatively) are presented in [Table 4]. In the 3 months follow-up, the IPSS decreased from 26.8 ± 5.7 to 6.3 ± 3.3, the QOL decreased from 5.3 ± 0.9 to 1.3 ± 0.9, the Qmax increased from 4.5 ± 4.7 mL/s to 24.9 ± 12.5 mL/s, and the PVR decreased from 227.4 ± 184.6 mL to 51.0 ± 35.1 mL in group 1, which showed significant improvement in IPSS (P < 0.001), QOL (P < 0.001), Qmax (P < 0.001), and PVR (P < 0.001). In group 2, the IPSS decreased from 25.1 ± 8.4-4.3 ± 3.0, the QOL decreased from 4.7 ± 1.1 to 1.5 ± 1.0, the Qmax increased from 2.2 ± 1.0 mL/s to 18.0 ± 10.5 mL/s, and the PVR decreased from 165.8 ± 122.7 mL to 33.8 ± 26.2 mL, which also showed significant improvement from baseline (P < 0.001). There were no significant differences in the IPSS, Qmax, QOL, and PVR between groups 1 and 2 at baseline and 3-month follow-up.
Table 4: Postoperative data
As shown in [Table 5], ten patients (76.9%) and six patients (22.2%) who had received blood transfusion in groups 1 and 2, respectively. Two patients (15.4%) in group 1 had hyponatremia, but both had no symptoms or signs of TUR syndrome, and no hypertonic solution (3% NaCl) was administered. No hyponatremia was noted in group 2. The other complications included recatheterization in three patients (23.1%) in group 1 and four patients (14.8%) in group 2, urethral stricture in one patient (7.7%) in group 1 and one patient (3.7%) in group 2, and transient partial incontinence in five patients (38.5%) in group 1 and seven patients (25.9%) in group 2. No patient had TUR syndrome, total incontinence, or hydronephrosis. None of the 40 patients had incidental prostate cancer detected on histopathological evaluation.
Table 5: Complications of monopolar transurethral resection of the prostate and holmium laser enucleation of the prostate
There are many available new contemporary procedures for BPH, including bipolar TUPR, KTP laser, diode laser, thulium laser, single-port transvesical simple prostatectomy, and robot-assisted laparoscopic simple prostatectomy. However, patients might be not willing to undergo laparoscopic surgeries and cannot afford the costs of bipolar TURP or laser surgeries. For these patients, M-TURP is still one of the best choices.
The efficacy of M-TURP has been questioned, and several studies have compared M-TURP and open prostatectomy for prostate glands with volume >80 mL. Ou et al. compared the surgical outcomes of transvesical prostatectomy (n = 34) and M-TURP (n = 35) for prostate size >80 g in a prospective randomized trial[14] and found that there was no significant difference in operative time and adverse events in both groups; however, postoperative outcomes, including IPSS, Qmax, QOL, and PVR, were much better in the TVP group than in the M-TURP group at the 3-and 12-month follow-up. They concluded that TVP might be safer and more effective than M-TURP for prostate glands with volume >80 mL. Concerning the poorer outcomes in the M-TURP group, we considered that the difference might be due to the amounts of resected prostate tissue. In TVP and M-TURP groups, a mean of 116.8 ± 33.2 g (84.4% of the preoperative calculated transrectal total prostate volume) and 69.7 ± 24.9 g (53.2% of the preoperative calculated transrectal total prostate volume) of prostatic tissue were resected, respectively (P < 0.001). Insufficient prostate tissue removal could result in unsatisfactory postoperative results. In our study, a mean of 119.2 ± 18.9 mL of prostatic tissue was resected in the M-TURP group and 105.5 ± 31.8 mL of prostatic tissue was resected in the HOLEP group, indicating that 73.0% and 73.6% of the preoperative calculated total prostate volumes were resected after M-TURP and HOLEP, respectively. These results were similar to the ratio of resected prostatic tissue in TVP groups in other studies.[6],[14] More importantly, all functional parameters improved significantly compared to baseline values in both groups. Accordingly, we posit that the differences between M-TURP, HOLEP, and open prostatectomy are not in the efficacy of these procedures but due to other reasons.
According to the literature review and our presenting study, the safety of M-TURP should be the most important concern. A meta-analysis of functional outcomes and complications following M-TURP, bipolar TURP, KTP, or HOLEP for LUTS from any size BPH showed M-TURP had similar functional outcomes with other transurethral procedures. However, for intraoperative complications, M-TURP (3.2%) and HOLEP (3.5%) measures were higher than other transurethral procedures. Intraoperative complications that were dominant in M-TURP included bleeding, capsular perforation, need for transfusion, and TUR syndrome. Capsular perforation was also noted in HOLEP. Moreover, the specific risk of bladder injury caused by morcellator occurred in HOLEP.[18] Another meta-analysis study that compared the safety of M-TURP and HOLEP showed that patients in HOLEP had less blood loss and lower blood transfusion rate than in M-TURP.[19] Li et al. had similar results, which demonstrated that M-TURP led to higher blood transfusion requirements compared with HOLEP.[20] Our study confirmed such findings that the transfusion rate was higher in the M-TURP group than in the HOLEP group in prostate glands with volume >100 mL. Furthermore, we also showed that the mean postoperative serum sodium level decreased from 137.1 mmol/L to 131.4 mmol/L in M-TURP, which was significantly lower than postoperative serum sodium level in HOLEP (P < 0.0001).
HOLEP showed similar efficacy to M-TURP in large prostate glands while rendering better safety. However, the disadvantages of HOLEP include high cost[21] and high surgical learning curve.[10],[22] Regarding the cost, many studies have compared the cost-effectiveness of HoLEP with M-TURP or open prostatectomy. One study showed that HoLEP is more cost-effective than M-TURP in a 1-year follow-up due to fewer complications and shorter hospital stay.[23] Another study compared HOLEP and open prostatectomy and found the average cost of HOLEP was 637 USD less than in open prostatectomy.[24] Regarding the learning curve, many studies have shown that there is a steep learning curve for HOLEP;[25],[26] however, several publications reported the number of cases to expertise for HOLEP was 40–100[27],[28] and a systemic review suggested that the time to expertise for HOLEP is similar to M-TURP and open prostatectomy.[29]
In this retrospective study, we compared the safety and efficacy of M-TURP and HOLEP for prostate volumes >100 mL in men with bladder outlet obstruction. To the best of our knowledge, this is the first study that focused on the comparisons between M-TURP and HOLEP for such large prostate glands. Nevertheless, we note several limitations in the present study. First, this was not a randomized control trial and the patient numbers were rather small (n = 40), which is the major limitation of the present study. However, there is still an important role for small cohort studies in uncommon surgeries. We emphasized that the study is "observational" and suggestive rather than confirmatory. It has certainly a merit to add up to the evidence in this topic and could provide valuable data for further studies. Second, there were just 3 months of follow-up, because all data were obtained from previous medical records, and most of them did not have long-term follow-ups. Third, we did not collect the concomitant conditions and medical prescriptions, such as hypertension, diabetes mellitus, alpha-1-adrenoreceptor blockers, and 5-alpha-reductase inhibitors, which might have affected the results. Fourth, the surgeons' skills and experiences in our study might be different, which might influence the outcomes of our study. Moreover, we recruited patients from 2009 to 2019, when laser enucleation was not extremely popular in the early 2010 s, an immature technique might be one of the biases. To clarify these technical and personal factors, we further analyzed the impact of operating years and surgeons on perioperative and postoperative outcomes [Table S1] and [Table S2]. We found that there was no significant difference between different years of surgical experiences and surgeons. Fifth, we did not unify the indications for blood transfusions. Patients might have blood transfusions during a surgery because of decreased blood pressure or acidemia. As a result, postoperative serum hemoglobin levels may not accurately represent blood loss. Therefore, we used both blood transfusion rates and postoperative hemoglobin values to explore the safety of surgery. Finally, there was no standard operating procedure in M-TURP for prostatic glands with volume >100 mL. In some patients, 20 mg furosemide (1 vial) was routinely administered intravenously if resection time exceeded 60 min or continuous sterile water irrigation >20000 mL was administered to protect them from TUR syndrome.
In this retrospective study, we compared the safety and efficacy of M-TURP and HOLEP for prostate volumes >100 mL in men with bladder outlet obstruction. We found that both procedures had similar operative time, admission days, days of catheter removal, and resected tissue volume. All functional parameters improved significantly compared to baseline values in both groups. However, high transfusion rates and postoperative hyponatremia were noted in the M-TURP group compared to the HOLEP group.
[TAG:2]Suppleme ntary Material[/TAG:2]
Chen PC, Wang CC, Tu YK. Combination alpha blocker and phosphodiesterase 5 inhibitor versus alpha-blocker monotherapy for lower urinary tract symptoms associated with benign prostate hyperplasia: A systematic review and meta-analysis. Urol Sci 2020;31:99-107.
McVary KT, Roehrborn CG, Avins AL, Barry MJ, Bruskewitz RC, Donnell RF, et al. Update on AUA guideline on the management of benign prostatic hyperplasia. J Urol 2011;185:1793-803.
EAU Guidelines. Presented at the EAU Annual Congress Milan; 2021.
Madersbacher S, Alivizatos G, Nordling J, Sanz CR, Emberton M, de la Rosette JJ. EAU 2004 guidelines on assessment, therapy and follow-up of men with lower urinary tract symptoms suggestive of benign prostatic obstruction (BPH guidelines). Eur Urol 2004;46:547-54.
Persu C, Georgescu D, Arabagiu I, Cauni V, Moldoveanu C, Geavlete P. TURP for BPH. How large is too large? J Med Life 2010;3:376-80.
Muzzonigro G, Milanese G, Minardi D, Yehia M, Galosi AB, Dellabella M. Safety and efficacy of transurethral resection of prostate glands up to 150 ml: A prospective comparative study with 1 year of followup. J Urol 2004;172:611-5.
Yucel M, Aras B, Yalcinkaya S, Hatipoglu NK, Aras E. Conventional monopolar transurethral resection of prostate in patients with large prostate (≥80 grams). Cent Eur J Urol 2013;66:303-8.
Kwon JS, Lee JW, Lee SW, Choi HY, Moon HS. Comparison of effectiveness of monopolar and bipolar transurethral resection of the prostate and open prostatectomy in large benign prostatic hyperplasia. Korean J Urol 2011;52:269-73.
Mebust WK, Holtgrewe HL, Cockett AT, Peters PC. Transurethral prostatectomy: immediate and postoperative complications. Cooperative study of 13 participating institutions evaluating 3,885 patients. J Urol 1989;141:243-7.
Kuntz RM, Lehrich K. Transurethral holmium laser enucleation versus transvesical open enucleation for prostate adenoma greater than 100 gm.: A randomized prospective trial of 120 patients. J Urol 2002;168 4 Pt 1:1465-9.
Naspro R, Suardi N, Salonia A, Scattoni V, Guazzoni G, Colombo R, et al. Holmium laser enucleation of the prostate versus open prostatectomy for prostates >70 g: 24-month follow-up. Eur Urol 2006;50:563-8.
Bhansali M, Patankar S, Dobhada S, Khaladkar S. Management of large (>60 g) prostate gland: PlasmaKinetic superpulse (bipolar) versus conventional (monopolar) transurethral resection of the prostate. J Endourol 2009;23:141-5.
Raghuvanshi K, Raval A, Jain D, Vartak K, Patil S, Iqbal S, et al. Comparative assessment of monopolar versus bipolar transurethral resection of prostate for the management of benign prostatic enlargement. Urol Sci 2019;30:262-5.
Ou R, You M, Tang P, Chen H, Deng X, Xie K. A randomized trial of transvesical prostatectomy versus transurethral resection of the prostate for prostate greater than 80 mL. Urology 2010;76:958-61.
Russo GI, Kurbatov D, Sansalone S, Lepetukhin A, Dubsky S, Sitkin I, et al. Prostatic arterial embolization vs open prostatectomy: A 1-year matched-pair analysis of functional outcomes and morbidities. Urology 2015;86:343-8.
Ajib K, Zgheib J, Salibi N, Zanaty M, Mansour M, Alenizi A, et al. Monopolar transurethral enucleo-resection of the prostate versus holmium laser enucleation of the prostate: A Canadian novel experience. J Endourol 2018;32:509-15.
Rassweiler J, Schulze M, Stock C, Teber D, De La Rosette J. Bipolar transurethral resection of the prostate--technical modifications and early clinical experience. Minim Invasive Ther Allied Technol 2007;16:11-21.
Ahyai SA, Gilling P, Kaplan SA, Kuntz RM, Madersbacher S, Montorsi F, et al. Meta-analysis of functional outcomes and complications following transurethral procedures for lower urinary tract symptoms resulting from benign prostatic enlargement. Eur Urol 2010;58:384-97.
Yin L, Teng J, Huang CJ, Zhang X, Xu D. Holmium laser enucleation of the prostate versus transurethral resection of the prostate: A systematic review and meta-analysis of randomized controlled trials. J Endourol 2013;27:604-11.
Li S, Zeng XT, Ruan XL, Weng H, Liu TZ, Wang X, et al. Holmium laser enucleation versus transurethral resection in patients with benign prostate hyperplasia: an updated systematic review with meta-analysis and trial sequential analysis. PLoS One 2014;9:e101615.
Kuntz RM, Ahyai S, Lehrich K, Fayad A. Transurethral holmium laser enucleation of the prostate versus transurethral electrocautery resection of the prostate: A randomized prospective trial in 200 patients. J Urol 2004;172:1012-6.
Tan AH, Gilling PJ. Holmium laser prostatectomy: Current techniques. Urology 2002;60:152-6.
Fraundorfer MR, Gilling PJ, Kennett KM, Dunton NG. Holmium laser resection of the prostate is more cost effective than transurethral resection of the prostate: Results of a randomized prospective study. Urology 2001;57:454-8.
Salonia A, Suardi N, Naspro R, Mazzoccoli B, Zanni G, Gallina A, et al. Holmium laser enucleation versus open prostatectomy for benign prostatic hyperplasia: An inpatient cost analysis. Urology 2006;68:302-6.
Kampantais S, Dimopoulos P, Tasleem A, Acher P, Gordon K, Young A. Assessing the learning curve of holmium laser enucleation of prostate (HoLEP). A systematic review. Urology 2018;120:9-22.
Razzak M. BPH: HoLEP--a steep learning curve but better for patients. Nat Rev Urol 2013;10:66.
Brunckhorst O, Ahmed K, Nehikhare O, Marra G, Challacombe B, Popert R. Evaluation of the learning curve for holmium laser enucleation of the prostate using multiple outcome measures. Urology 2015;86:824-9.
Placer J, Gelabert-Mas A, Vallmanya F, Manresa JM, Menéndez V, Cortadellas R, et al. Holmium laser enucleation of prostate: outcome and complications of self-taught learning curve. Urology 2009;73:1042-8.
van Rij S, Gilling PJ. In 2013, holmium laser enucleation of the prostate (HoLEP) may be the new "gold standard". Curr Urol Rep 2012;13:427-32.
Chang CK
Lee CH
Lin CH
Li CC
Wen SC
Yeh HC
Geng JH
prostatic hyperplasia
transurethral resection of prostate
Supplementary Ma...


Аннотация: Single crystals of yttrium aluminum borate co-doped with 5% thulium and 10-20% ytterbium demonstrate upconversion luminescence both in the red and in the blue. All spectral components of the upconversion luminescence originate from (1)G(4) thulium ion state. A cooperative upconversion mechanism with a nearly quadratic slope of the power dependence dominates in the studied pump power density range. The excitation spectra are asymmetric due to different contributions from the crystal field split components of ytterbium F-7(7/2)-F-7(5/2) transition. Optimal ytterbium doping for efficient upconversion is below 20%. (C) 2010 Elsevier B.V. All rights reserved.


mistake / ommision might be?
> mistake / ommision might be?
day meeting is shown as 'free' by default. That is not the case here.
that I can view to see what has happened?
> > mistake / ommision might be?
no, appointment changes are not logged.
> day meeting is shown as 'free' by default. That is not the case here.
> that I can view to see what has happened?
> > > mistake / ommision might be?


text:
PRODUCT COMPARISON REPORTS
Inside the Briefcase
IT Briefcase Exclusive Interview: Getting the Most Out of Open Source While Managing License Compliance, Risk, and Security
with Kendra Morton, Flexera
In this interview, Kendra Morton,...
Why DEM Matters More Than Ever in Financial Services
Remember waiting in line at the bank? Banking customers...
How to Transform Your Website into a Lead Generating Machine
Responsive customer service has become of special importance, as...
Ironclad SaaS Security for Cloud-Forward Enterprises
The 2015 Anthem data breach was the result of...
The Key Benefits of Using Social Media for Business
Worldwide, there are more than 2.6 billion social media...
SAP to Up Ante in Mobile Analytics With Planning and Consolidation App
SOURCE: SAP AG
LAS VEGAS, Oct. 16, 2012 /PRNewswire/ – SAP AG (NYSE: SAP) today announced upcoming availability of SAP® Business Planning and Consolidation 10.0 application on the SAP® EPM Unwired mobile app. SAP Business Planning and Consolidation is one of the latest planned additions to the library of apps available on SAP EPM Unwired. The application aims to provide access to decision-critical information through next-generation user experiences on mobile devices. The availability of financial planning and analysis data enables managers to go beyond simply accessing information to inputting information. This offering is part of a series of mobile innovations announced over the last year in business intelligence (BI), cloud-based enterprise performance management (EPM), governance, risk and compliance (GRC) and applied analytics. The announcement was made at SAP® TechEd 2012, being held October 15-19 in Las Vegas.
SAP EPM Unwired, available now on iTunes, is the mobile entry point into the SAP® EPM OnDemand solution. Applications like SAP EPM Unwired provide users a mobile front-end as part of the EPM suite on the device of their choice. This gives users the ability to plan, budget, forecast and consolidate anywhere, on demand.
On-the-Go Information from the Nordics to Nepal
Network access and telecommunication services provider TeliaSonera is using SAP BusinessObjects Mobile to help executives, sales teams and line-of-business managers keep track of their sales pipeline.
"TeliaSonera is committed to mobilizing our workforce in the same way we help mobilize our customers," said Tito Toivola, head of Large Enterprises and Public Sector, TeliaSonera. "We want our employees to have the same experience at work as they have in their personal lives. This means we have to give our employees access to the tools needed to do their jobs on mobile devices. With mobile analytics from SAP, people across our lines of business can make more informed decisions in real time."
Helping Users Keep a Finger on the Pulse of Their Business
SAP intends to continue momentum and product innovations with planned quarterly releases of mobile analytic apps. Some examples of innovations to mobile analytics announced over the last 12 months include:
SAP BusinessObjects Mobile: The mobile entry point for BI content, including SAP® Crystal Reports® and SAP® BusinessObjects™ Web Intelligence® software. Users can easily understand business impact, collaborate with stakeholders and take action directly from the software. The most recent 4.3 release has extended visualization capabilities and language support for French, German, Japanese, Simplified Chinese, Portuguese, Russian, Spanish and Polish.
SAP BusinessObjects Explorer® mobile app: "Big data" can be searched and explored through dynamic exploration views that feature Google maps integration, augmented reality and the ability to personalize visualizations.
For announcements, blog posts, videos and other coverage during SAP TechEd, visit the Events Newsroom.
SAP® TechEd 2012 in Las Vegas, Madrid, Bangalore, and Shanghai
SAP customers, partners, and technical experts are expected to convene at SAP® TechEd 2012, the company's premier technical conference. Hands-on workshops, demo-driven lectures, and Q&A sessions on the latest developments in analytics, mobile, cloud, database, and in-memory computing enable SAP TechEd attendees to enhance their skills while making valuable connections with peers and IT experts from the SAP community. SAP TechEd is being held in Las Vegas, Nevada, from October 15-19, and will be held in Madrid, Spain, from November 13-16; Bangalore, India, from November 28-30; and Shanghai, China, from December 4-5. Follow SAP TechEd on Twitter at @SAPTechEd and join the conversation at #SAPTechEd.
As market leader in enterprise application software, SAP (NYSE: SAP) helps companies of all sizes and industries run better. From back office to boardroom, warehouse to storefront, desktop to mobile device – SAP empowers people and organizations to work together more efficiently and use business insight more effectively to stay ahead of the competition. SAP applications and services enable more than 195,000 customers (includes customers from the acquisition of SuccessFactors) to operate profitably, adapt continuously, and grow sustainably. For more information, visit www.sap.com.
© 2012 by SAP AG. All rights reserved.
SAP and the SAP logo are registered trademarks of SAP AG in Germany and other countries. Business Objects and the Business Objects logo are trademarks or registered trademarks of Business Objects Software Ltd. Business Objects is an SAP company. Sybase and the Sybase logo are registered trademarks of Sybase Inc. Sybase is an SAP company. Crossgate is a registered trademark of SAP in Germany and other countries.
For customers interested in learning more about SAP products:
Global Customer Center: +49 180 534-34-24
United States Only: 1 (800) 872-1SAP (1-800-872-1727)
For more information, press only:
Jason Grosse, +1 (416) 218-6538, jason.grosse@sap.com, EDT
Amisha Gandhi, +1 (415) 341-7101, amisha.gandhi@sap.com, PDT
SAP Press Office, +49 (6227) 7-46315, CET; +1 (610) 661-3200, EDT; press@sap.com
DATA and ANALYTICS , MOBILE
One Comments to "SAP to Up Ante in Mobile Analytics With Planning and Consolidation App"
Princes says:
Good discussion on SAP's moiblity position based on customer feedback and working sessions. a0Thanks for laying it out for people. a0I always appreciate what you guys have to say. Nice job.a0There is no question that SAP could make a significant number of applications itself, but I have consistently heard that SAP wants partners to make the bulk of the apps. a0It does not matter if SAP makes 2 or 200 apps, customers will buy the apps that improve their ability to execute and allow them to leverage their existing investment in SAP (Business Suite / On Premise) in a meaningful way. a0I do not think any partner should be waiting to see what SAP is building in terms of enterprise mobile LOB apps. a0Especially at this time when demand is growing quickly, people with good ideas, validated by customers willing to pay to see them executed, should get out in front. a0Yes, they may eventually compete with SAP, but for an ecosystem to thrive there has to be some competition. a0SAP needs to make its plans with SUP much more clear to both customers and partners.Full disclosure I work for SAP, but do not have any direct connection to our mobile strategy currently, so I am just speaking as an individual trying to look at it from a customer and partner perspective. a0I also used to run the solution management for SAP EcoHub (until feb 2011) so I can confirm that the mobile app store is currently a subset of EcoHub but there have been, and will continue to be more investment in this area. a0I think SAP does realize that to rely on the ecosystem it will need to support the ecosystem with at least some of the required market mechanisms (including some form of enterprise mobile application marketplace).Thanks again for the good discussion on an important topic.
IT BRIEFCASE MEDIA PARTNERS
ITBriefcase brought to you by: Virtual Star Media Copyright by IT Briefcase - IT Briefcase is a targeted online publication that attracts qualified business and IT professionals who are actively researching business integration solutions. Some of the topics we cover include BI, BPM, Cloud Computing, Data Storage, Health IT and Open Source. A full list of the topics we cover can be found on the right hand side of our website.


Some infos about the game.
Speckled Action is a - let´s call it - Hit & Run game, which was made for the computergraphics 2/3 course at the Technical University Vienna, where it placed 2nd in the final competition (beside 2 other games). You can take a look at the Hall of Fame 2003.
If you are interested in more technical details take a look here.
So, what´s the game about. You are playing a giraffe running around an island and collecting rings. You are in contest with other giraffes played by the computer. The one, which has collected a given amount of rings first, is the winner.
That sound´s easy? Well, you can also loose the collected rings. If you run over a ring, it´s yours and placed around the neck of the giraffe. You can only carry 5 rings at the same time. As long as the rings are around your neck they are not save. Other giraffes can attack you. Enemies, bad enemies can attack you. Only when you bring the rings to your home they are saved and counting.